前言

由于去年在阿里云购置的轻量应用服务器即将到期,本着能省则省的原则,在腾讯云直接入手三年期的轻量应用服务器,趁着周末把该配置的配置一下。

由于需要使用宝塔面板管理web站点,因此决定选择在Docker容器中安装宝塔面板。

啊?你问为什么这样

  1. 环境隔离,一个主机可以部署多套服务
  2. 宝塔对主机控制度较高,依赖关系复杂,而 Docker 可以保证宝塔服务不影响到[宿主机其他服务。
  3. 由于和宿主机环境隔离,不容易被木马工具。
  4. 宝塔面板的兼容性顺序为 Centos7.x > Debian10 > Ubuntu 20.04 > Cenots8.x > Ubuntu 18.04 > 其它系统,而用户的主机五花八门,为了获取最佳的兼容性,使用 Docker 部署是不二选择。
  5. Docker 管理成本低,方便迁移。
  6. 可随时管理容器,无需重置服务器。
  • Ubuntu 22.04
  • Docker 24.0.7
  • CentOS 7.8

过程

一、安装Docker

以下方式选其一,亲测官方Docker镜像非常慢,推荐使用阿里云Docker镜像源安装

温馨提示:

Ubuntu 22.04 LTS 中使用命令行升级软件或安装任何新软件时,您可能收到“Daemons using outdated libraries“,“Which services should be restarted?”的提示,解决方法请参照:

ubuntu22.04LTS安装过程中出现“Daemons using outdated libraries”提示问题 - 一面明心镜 (leesong.top)

阿里云 Docker 镜像源安装 Docker:

1、更新包管理器:

sudo apt update

2、安装 Docker 的依赖包:

sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release

3、添加阿里云 Docker 镜像源 GPG 密钥:

curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

4、添加阿里云 Docker 镜像源:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

5、更新apt缓存:

sudo apt update

6、安装 Docker:

sudo apt install docker-ce docker-ce-cli containerd.io

7、启动 Docker 服务:

sudo systemctl start docker

8、测试Docker是否正确安装:

sudo docker run hello-world

该命令会会从 Docker Hub 上下载一个测试镜像并运行它。如果 Docker 正确安装,会显示一些信息并打印一条信息”Hello from Docker!“。

9、查看Docker版本

docker -v

官方Docker安装

sudo apt update // 更新包管理器
sudo apt install apt-transport-https ca-certificates curl gnupg lsb-release // 安装 Docker 的依赖包
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg // 添加 Docker GPG 密钥
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null // 添加 Docker apt 仓库
sudo apt update // 更新 apt 缓存
sudo apt install docker-ce docker-ce-cli containerd.io // 安装 Docker
sudo systemctl start docker // 启动Docker服务

二、Docker生成容器安装宝塔

宝塔需要的端口:8888、888、20、21、80、443 需要提前开放

宝塔面板部署:

docker run -tid --name baota -p 80:80 -p 443:443 -p 8888:8888 -p 888:888 -p 20:20 -p 21:21 --privileged=true --restart always -v baota_www:/www -v ~/wwwroot:/www/wwwroot pch18/baota

命令含义

进入容器:

docker exec -it baota bash

宝塔面板控制命令

bt

删除容器

docker stop rm -f baota

三、备份宝塔容器或者进行迁移(未测试)

步骤方法

参考资料

Docker 安装配置宝塔面板

ubuntu22.04安装Docker两种方式

Docker三分钟颠覆性安装宝塔面板

最后修改:2023 年 10 月 28 日
如果觉得我的文章对你有用,请随意赞赏