0%

失物招领Dokcer化部署

一、SSH配置

1、更改Root用户密码

初次使用先从管理员切换到root用户,并更改root用户密码

1
2
3
4
切换Root用户
sudo su root
为root用户设置密码
passwd root

image-20200810185454159

更改SSH默认配置 并重启SSH服务

1
2
3
4
sed -i "s/#PermitRootLogin.*/PermitRootLogin yes/g" /etc/ssh/sshd_config \
&& sed -i "s/#PasswordAuthentication.*/PasswordAuthentication yes/g" /etc/ssh/sshd_config \
&& sed -i "s/#PubkeyAuthentication.*/PubkeyAuthentication yes/g" /etc/ssh/sshd_config \
&& /etc/init.d/ssh restart

二、Docker安装、启动、镜像加速、Docker Compose安装

使用脚本自动安装在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,可以通过 –mirror 选项使用国内源进行安装,执行这组命令后,脚本就会自动的将一切准备工作做好,并且把 Docker CE 的稳定(stable)版本安装在系统中并且设置开机自启。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
curl -fsSL get.docker.com -o get-docker.sh \
&& sudo sh get-docker.sh --mirror Aliyun \
&& sudo systemctl enable docker \
&& sudo systemctl start docker \
&& echo " { \
\"registry-mirrors\": [
\"https://mirror.ccs.tencentyun.com\",
\"https://eqcxmbvw.mirror.aliyuncs.com\"
]
}" > /etc/docker/daemon.json \
&& service docker restart \
&& docker info \
&& curl -k -L https://github.wuyanzheshui.workers.dev/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose \
&& chmod +x /usr/local/bin/docker-compose \
&& docker-compose

Docker可视化面板安装(汉化版)

汉化版的没有更新提示

1
2
3
4
5
6
7
docker run -d \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
--name portainer \
--restart=always \
registry.cn-zhangjiakou.aliyuncs.com/ctgu/portainer

三、开放安全组端口

安装完成之后记得去阿里云或者腾讯云控制台开放对应端口,这里是9000端口

官方帮助文档:https://cloud.tencent.com/document/product/213/39740

image-20200810190047023

四、服务器迁移

1、导出数据库文件,并删除mysql的安装文件

1
2
3
docker exec -it mysql sh -c "mysqldump -h127.0.0.1 -uroot -p数据库密码 swzl > /docker-entrypoint-initdb.d/init.sql" \
&& chmod +x /www/server/mysql/init/* \
&& rm -rf /www/server/mysql/data/*

2、网站整站打包

1
2
3
4
5
cd ~/.. \
&& tar -zcvf www.tar.gz www
scp www.tar.gz root@新服务的ip:..

scp www.tar.gz root@49.235.194.44:..

五、网站证书

CDN证书需要每年到期后手动去云服务器控制台申请

参考:https://blog.csdn.net/javaxw666/article/details/96602668

五、网站证书设置定时任务,过期后自动替换

1
2
3
4
首次申请证书
tar xvf www.tar.gz \
&& /www/server/nginx/cert \
&& docker-compose up -d

六、定时任务设置

1
2
#新建定时任务
crontab -e
1
2
0 1 * * * cd /www/server/qiniu/ && python main.py >/dev/null 2>&1
0 0 */30 * * docker exec acme.sh --cron --force > /dev/null && docker restart nginx

查看设置的定时任务

1
crontab -l

image-20210123102953430

七、数据库注意事项

1、数据库每天定时备份

备份用的七牛云OSS,每天定时备份,需要先安装依赖,然后添加定时任务

1
2
3
安装依赖
apt install python-pip \
&& pip install qiniu==7.2.9
1
2
3
4
5
6
每晚凌晨1点备份数据库,保留最近30天的数据库,
每隔30天检查一次证书
#添加定时任务
crontab -e
0 1 * * * cd /www/server/qiniu/ && python main.py >/dev/null 2>&1
0 0 */30 * * docker exec acme.sh --cron --force > /dev/null && docker restart nginx

2、数据库目录权限问题

1
2
#数据库的权限
chmod 777 /www/server/mysql/data

相关资源

👉 Docker练习平台:http://play-with-docker.com

👉 Docker官方文档: https://docs.docker.com

👉 Docker官网:https://www.docker.com

👉 Docker Hub:https://hub.docker.com

👉 菜鸟教程Docker: https://www.runoob.com/docker/docker-tutorial.html

iBoy wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!