安装Docker:

sudo apt install docker.io

设置Docker开机自启:

sudo systemctl start docker
sudo systemctl enable docker

查看是否安装成功:

docker -v

Docker拉取centos镜像:(不建议使用默认版本。因为centos8官方已停止支持)

docker pull centos:7.2.1511

创建名为baota的Docker容器并将主机相关端口映射到容器中:

docker run -i -t -d --name baota -p 20:20 -p 21:21 -p 80:80 -p 443:443 -p 888:888 -p 8888:8888 --privileged=true -v /home/www:/www centos:7.2.1511

设置容器开机自启:

docker update --restart=always 容器ID

进入容器baota:

docker exec -it baota /bin/bash

安装必要软件:

yum check-update -y && yum update -y && yum install initscripts screen wget -y
yum install -y dbus

在容器中执行宝塔安装命令:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装完成后可以通过 bt default 命令查看默认账号密码和登录相关信息。

使用 exit 退回到宿主机,配置宝塔自启动。

创建自启动脚本:

cd /home
mkdir user
vi /home/user/startBotSh.sh

在脚本中按 a 加入以下内容并使用 :wq 保存:

sleep 30;
sudo docker exec 容器ID /etc/init.d/bt start && sudo docker exec 容器ID /etc/init.d/nginx start && sudo docker exec 容器ID /etc/init.d/php-fpm-56 start && sudo docker exec 容器ID /etc/init.d/mysqld start

挂载自启动脚本:

crontab -e

在文件末尾添加并使用 :wq 保存:

@reboot sudo bash /home/user/startBotSh.sh

若使用 crontab -e 时显示 no crontab for root

则在终端输入以下命令并选择 vim.basic 回车后重新使用 crontab -e

select-editor

若重启服务器后显示数据库连接错误可编辑之前的 startBotSh.sh

sudo docker exec 容器ID /etc/init.d/mysqld start 前面的&& 去掉

并回车换行加入 sleep 15;