【部署系列】Docker 部署 acme.sh

安装环境

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镜像为例:

docker info

【部署系列】Docker 部署 acme.sh

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

运行 docker-compose

docker-compose up -d

申请SSL证书

--debug 可以去掉,我们加上能直接打印出每一步详细日志,如果出错的话可以知道在哪一步出错
-d 后面换成你自己的域名,可以使用*号 泛指所有子域名,eg *.3658k.com
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

下篇

下一篇将讲解 “nginx如何配置https”,敬请期待 https://www.cnblogs.com/jesn/p/16710847.html

Original: https://www.cnblogs.com/jesn/p/16710609.html
Author: jesn
Title: 【部署系列】Docker 部署 acme.sh

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/586644/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • linux基本命令

    cd 切换文件夹 cd /home 绝对路径 以包目录开头 cd admin 相对路径 不以包目录开头 cd .. 返回上级目录 cd ~ 到自己的家目录 /home/admin …

    Java 2023年6月16日
    081
  • java释放资源、try()用法

    不用写一大堆finally来关闭资源,所有实现Closeable的类声明都可以写在里面,最常见于流操作,socket操作,新版的httpclient也可以;需要注意的是,try()…

    Java 2023年5月29日
    068
  • 利用 XXL-JOB 实现灵活控制的分片处理

    本文讲述了一种利用 XXL-JOB 来进行分片任务处理的方法,另外加入对执行节点数的灵活控制。 场景 现在一张数据表里有大量数据需要某个服务端应用来处理,要求: 能够并行处理; 能…

    Java 2023年6月5日
    090
  • 自定义MyBatis

    一. 原生 JDBC 1. 原生JDBC使用 public static void main(String[] args) { Connection conn = null; Pr…

    Java 2023年6月5日
    095
  • 实时折射、镜面反射shader

    原文链接:http://www.ceeger.com/forum/read.php?tid=3162&fid=2 Unity没有原生的实时镜面反射Shader,分享几个自己…

    Java 2023年5月30日
    079
  • 面试题:海量数据处理利器-布隆过滤器

    概念 原理 布隆过滤器的使用场景 简单模拟布隆过滤器 Guava布隆过滤器 Redis布隆过滤器 布谷鸟过滤器 作者:小牛呼噜噜 | https://xiaoniuhululu.c…

    Java 2023年6月15日
    0117
  • SpringMVC&Maven进阶

    SpringMVC 3.1 了解SpringMVC 概述 SpringMVC技术与Servlet技术功能等同,均属于web层开发技术 学习路线 请求与响应 REST分割 SSM整合…

    Java 2023年6月6日
    098
  • 保姆教程系列一、Linux搭建Nacos

    前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 简介: Nacos是阿里巴巴开源的一款支持服务注册与发现,配置管理以及微服务管理的组件。用来取代以前常用的注册中心…

    Java 2023年6月5日
    0100
  • PhotoShop入门

    字体安装 将xxx.ttf字体文件放在 C:\Windows\Fonts目录下。 PhotoShop新建工作区 默认显示的工作区如下图所示: 图层、通道、路径、调整、库等都是不常用…

    Java 2023年6月15日
    084
  • Python查看谁没有交文件给我

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Java 2023年6月8日
    078
  • 项目一共30个模块,你叫我maven版本一个个手动改?

    大家好呀,我是铂赛东,一个乱入公众号博主的开源作者。今天分享一个maven小技巧,希望帮助到大家。 之前有个群友私聊问我,如何快速统一去更改项目中所有的maven版本号,他说之前都…

    Java 2023年6月8日
    085
  • Android Jetpack Navigation基本使用

    Android Jetpack Navigation基本使用 本篇主要介绍一下 Android Jetpack 组件 Navigation 导航组件的 基本使用 当看到 Navig…

    Java 2023年6月9日
    099
  • Spring Boot下拦截器与过滤器

    在讲Spring boot之前,我们先了解一下过滤器和拦截器。这两者在功能方面很类似,但是在具体技术实现方面,差距还是比较大的。在分析两者的区别之前,我们先理解一下AOP的概念,A…

    Java 2023年5月30日
    075
  • 【Java面试手册-基础篇】能否改变Java中main()方法的返回类型

    答案是否定的,main()方法的返回类型必须是 void ,任何其它类型都是不能接受的。 下面来进行测试验证,把 main() 方法的返回类型为 int ,如下: package …

    Java 2023年6月8日
    0105
  • 经典实验–网络聊天室(NetChatRoom)1

    ·网络聊天室(NetChatRoom)1 ·作品预览 客户端 ChatClient package chatclient; import java.awt.Color; impor…

    Java 2023年6月15日
    0108
  • 线程池

    1、池化技术(思想) (1)池化技术:程序运行的本质->占用系统的资源,优化资源的使用便是池化技术 (2)简单理解:实现准备好一些资源,有人要用,就来这个池拿,用完放回即可。…

    Java 2023年6月5日
    070
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球