安装环境
Docker安装
- 具体的安装直接参考Docker官方文档即可:
https://docs.docker.com/engine/install/
以centos系统为例:
1、 卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、设置存储库
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3、安装 Docker 引擎
- 3.1 安装最新版本的 Docker Engine、containerd 和 Docker Compose
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
- 3.2、启动 Docker
sudo systemctl start docker
- 3.3 检查Docker是否安装成功
docker --version
4、设置国内镜像
这里以设置阿里云Docker镜像为例:
- 4.1 访问阿里云Docker镜像页面 https://cr.console.aliyun.com/cn-shanghai/instances/mirrors
- 4.2 针对自己的系统,赋值以下内容,在自己服务器上执行下
- 4.3 检查配置是否更新,查看
Registry Mirrors
是否已经更新为阿里云镜像
docker info
Docker Compose 安装
安装方式和Docker安装类似,直接参考官方地址: https://docs.docker.com/compose/install/linux/
部署acme.sh
编写docker-compose.yml
version: '3'
services:
acme-sh:
image: neilpang/acme.sh
container_name: acme.sh
restart: always
command: daemon
environment:
- Ali_Key="xxxxx"
- Ali_Secret="xxxxx"
volumes:
- /data/dockerdata/acme/out:/acme.sh
network_mode: host
-
我的域名和域名解析均在阿里云,所以这里配置的Dns解析的相关配置均为阿里云环境变量
Ali_Key
、Ali_Secret
-
阿里云如何配置请参考: https://guozh.net/acme-sh-gen-lets-encrypt-domain-ssl-tutorial/
-
具体的参数请查看
Acme.sh
官方文档 https://github.com/acmesh-official/acme.sh/wiki/Run-acme.sh-in-docker
运行 docker-compose
docker-compose up -d
申请SSL证书
# --debug 可以去掉,我们加上能直接打印出每一步详细日志,如果出错的话可以知道在哪一步出错
docker exec acme.sh --issue --dns dns_ali -d test.3658k.com -d 3658k.com --debug
设置 crontab 任务自动续签
在宿主主机的cronta,添加一条定时任务,每天让acme容器去自动检查下那些域名过期,如果过期的话,acme会自动续签,这样我们就不用担心证书过期了
crontab -e
添加一下内容
0 0 * * * docker exec acme.sh --cron
标签:acme,部署,--,sh,Docker,com,docker
From: https://www.cnblogs.com/jesn/p/16710609.html