1 changed files with 169 additions and 0 deletions
@ -0,0 +1,169 @@ |
|||||||
|
# Docker 部署 Nginx服务已经证书整合 |
||||||
|
|
||||||
|
--- |
||||||
|
|
||||||
|
首先》先从docker 中获取nginx镜像(默认是latest) |
||||||
|
|
||||||
|
然后》创建可以映射到云服务器中的文件夹,推荐用服务器自带的www文件夹来做映射(没有就自行创建) |
||||||
|
|
||||||
|
接着》先运行一个测试的容器自定义命名 |
||||||
|
|
||||||
|
随后》复制里面的配置文件到准备映射的文件夹中 |
||||||
|
|
||||||
|
接着》将测试容器删除。接着创建一个正式使用的容器 |
||||||
|
|
||||||
|
剩下的就是进行服务配置了。 |
||||||
|
|
||||||
|
步骤代码: |
||||||
|
|
||||||
|
``` |
||||||
|
docker pull nginx |
||||||
|
``` |
||||||
|
|
||||||
|
创建文件夹 |
||||||
|
|
||||||
|
``` |
||||||
|
mkdir /www/nginx/conf |
||||||
|
mkdir /www/nginx/conf.d |
||||||
|
mkdir /www/nginx/html |
||||||
|
mkdir /www/nginx/log |
||||||
|
mkdir /www/nginx/conf/key |
||||||
|
``` |
||||||
|
|
||||||
|
测试容器 |
||||||
|
|
||||||
|
``` |
||||||
|
docker run -it -p 80:80 -p 443:443 --network NginxNetwork -name nginxtest -d nginx:latest |
||||||
|
``` |
||||||
|
|
||||||
|
复制配置文件 |
||||||
|
|
||||||
|
``` |
||||||
|
docker cp nginxtest:/etc/nginx/nginx.conf /www/nginx/conf/nginx.conf |
||||||
|
docker cp nginxtest:/etc/nginx/conf.d /www/nginx |
||||||
|
docker cp nginxtest:/usr/share/nginx/html /www/nginx |
||||||
|
``` |
||||||
|
|
||||||
|
上传证书,通过工具上传到指定文件夹下即可。 |
||||||
|
|
||||||
|
随即删除测试容器,做正式使用的容器 |
||||||
|
|
||||||
|
``` |
||||||
|
docker run --name nginx -p 80:80 -p 443:443 --network NginxNetwork --privileged --restart=always \ |
||||||
|
-v /www/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ |
||||||
|
-v /www/nginx/conf.d:/etc/nginx/conf.d \ |
||||||
|
-v /www/nginx/html:/usr/share/nginx/html \ |
||||||
|
-v /www/nginx/log:/var/log/nginx \ |
||||||
|
-v /www/nginx/conf/key:/etc/nginx/key \ |
||||||
|
-d nginx:latest |
||||||
|
``` |
||||||
|
|
||||||
|
如果启动状态不对,就查看日志。 |
||||||
|
|
||||||
|
要么就是说容器没有指定的文件夹。要么就是没有指定的配置文件。 |
||||||
|
|
||||||
|
docker cp /www/nginx/conf/key 容器名:/etc/nginx/key |
||||||
|
|
||||||
|
随即进行服务配置。最后进行重启容器即可。 |
||||||
|
|
||||||
|
#拉镜像 |
||||||
|
docker pull jenkins/jenkins |
||||||
|
|
||||||
|
#创建卷(volume) |
||||||
|
docker volume create jenkins_home |
||||||
|
|
||||||
|
#制作容器并启动 |
||||||
|
docker run -d \ |
||||||
|
-p 8080:8080 \ |
||||||
|
-p 50000:50000 \ |
||||||
|
-v jenkins_home:/var/jenkins_home \ |
||||||
|
-v /usr/lib/jvm/java-8-openjdk-amd64:/usr/local/java \ |
||||||
|
-v /home/holen/.local/share/apache-maven-3.6.3:/usr/local/maven \ |
||||||
|
--name jenkins-quick \ |
||||||
|
jenkins/jenkins |
||||||
|
|
||||||
|
``` |
||||||
|
docker run -d \ |
||||||
|
-p 8080:8080 \ |
||||||
|
-p 50000:50000 \ |
||||||
|
-v jenkins_home:/var/jenkins_home \ |
||||||
|
-v /usr/lib/jvm/java-11-openjdk-11.0.18.0.9-0.3.ea.el8.x86_64:/usr/local/java \ |
||||||
|
-v /root/server/apache-maven-3.9.3:/usr/local/maven \ |
||||||
|
--name jenkins-quick \ |
||||||
|
jenkins/jenkins:lts-jdk11 |
||||||
|
``` |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#访问Jenkins |
||||||
|
http://localhost:8080 |
||||||
|
|
||||||
|
项目部署: |
||||||
|
|
||||||
|
N个项目后端口 |
||||||
|
|
||||||
|
一个Jenkins管理口 |
||||||
|
|
||||||
|
一个Nginx服务端口 |
||||||
|
|
||||||
|
一个Gitea服务端口 |
||||||
|
|
||||||
|
统计网段: |
||||||
|
|
||||||
|
172.17.0: |
||||||
|
|
||||||
|
Gitea 、Jenkins |
||||||
|
|
||||||
|
172.18.12: |
||||||
|
|
||||||
|
Nginx |
||||||
|
|
||||||
|
172.13.19: |
||||||
|
|
||||||
|
N个项目端口 |
||||||
|
|
||||||
|
配置步骤: |
||||||
|
|
||||||
|
创建docker 网络 |
||||||
|
|
||||||
|
``` |
||||||
|
docker network create -d bridge --subnet=172.20.12.0/10 --gateway=172.20.12.1 NginxNetwork |
||||||
|
``` |
||||||
|
|
||||||
|
连接两个网段 |
||||||
|
|
||||||
|
``` |
||||||
|
docker network connect my-network-1 my-container-2 // 这里是在某个网段中添加其他网段的容器在这个网段中。同理,另外一个网段的容器也是。 |
||||||
|
``` |
||||||
|
|
||||||
|
断开两个网段 |
||||||
|
|
||||||
|
``` |
||||||
|
docker network disconnect my-network-1 my-container-2 |
||||||
|
``` |
||||||
|
|
||||||
|
``` |
||||||
|
docker run --name nginx -p 80:80 -p 443:443 --network NginxNetwork --privileged --restart=always \ |
||||||
|
-v /www/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ |
||||||
|
-v /www/nginx/conf.d:/etc/nginx/conf.d \ |
||||||
|
-v /www/nginx/html:/usr/share/nginx/html \ |
||||||
|
-v /www/nginx/log:/var/log/nginx \ |
||||||
|
-v /www/nginx/conf/key:/etc/nginx/key \ |
||||||
|
-d nginx:latest |
||||||
|
|
||||||
|
docker run --name nginx -p 80:80 -p 443:443 -d nginx:latest |
||||||
|
|
||||||
|
docker run --name nginx -p 80:80 --privileged --restart=always \ |
||||||
|
-v /www/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \ |
||||||
|
-v /www/nginx/conf.d:/etc/nginx/conf.d:rw \ |
||||||
|
-v /www/nginx/html:/usr/share/nginx/html:rw \ |
||||||
|
-v /www/nginx/log:/var/log/nginx \ |
||||||
|
-d nginx |
||||||
|
``` |
||||||
|
|
||||||
|
复制文件夹到容器内部 |
||||||
|
|
||||||
|
``` |
||||||
|
docker cp /path/to/local/directory container-id:/path/to/container/directory |
||||||
|
``` |
||||||
|
|
||||||
Loading…
Reference in new issue