Bootstrap

Docker通过nginx部署前端Vue项目

docker以及镜像安装

2.1.6、安装docker引擎

yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

2.1.7、启动docker

systemctl start docker

2.1.8、查看docker版本

docker version

2.1.1、检查环境

Docker运行环境要求系统为64位、Linux系统内核版本为 3.8以上

查看自己虚拟机的内核:cat /etc/redhat-release

拉取镜像nginx:1.18.0

docker pull nginx:1.18.0

2.2.5、查看镜像

docker images

4.1、Nginx镜像部署

因为需要nginx的初始化配置文件,为了保证不出错,

所以我们直接启动一个nginx容器,把配置文件拉取下来,然后删除容器

4.1.1、创建nginx工作目录

#需要一个conf文件存放目录,和html文件目录,及日志存放目录

mkdir -p /data/applications/nginx/conf

mkdir -p /data/applications/nginx/html

mkdir -p /data/logs

4.1.2、启动nginx容器,如果这个镜像本机中没有,会自动下载镜,我这下载是的1.18版本

docker run --name nginx -p 80:80 -d nginx:1.18.0

4.1.3、复制容器中配置文件目录到本机中,然后删除该容器

docker cp nginx:/etc/nginx/nginx.conf /data/applications/nginx/conf/nginx.conf

docker cp nginx:/etc/nginx/conf.d /data/applications/nginx/conf/conf.d

docker cp nginx:/usr/share/nginx/html /data/applications/nginx/

#先用 [docker ps – a] 命令 找到对应容器ID

#才可以删除容器

docker rm -f [容器ID]

4.1.4、启动新的nginx容器

docker run -d \

-p 80:80 \

-p 443:443 \

--name nginx \

--restart=always \

--network-alias nginx \

-e TZ="Asia/Shanghai" \

-v /data/applications/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \

-v /data/applications/nginx/conf/conf.d:/etc/nginx/conf.d \

-v /data/logs/nginx:/var/log/nginx \

-v /data/applications/nginx/html:/usr/share/nginx/html \

-v /data/applications/nginx/cert:/etc/nginx/cert \

nginx:1.18.0

再一次提醒firewalld防火墙是否关闭,或者端口是否开启,以及服务器的安全组是否配置!

命令说明:

privileged=true # 容器内被赋予root权限

-v /data/applications/nginx/html:/usr/share/nginx/html # 挂载的静态文件目录

-v /data/applications/nginx/nginx.conf:/etc/nginx/nginx.conf # 挂载的nginx配置文件目录

-v /data/applications/nginx/logs:/var/log/nginx #挂载nginx日志文件

-v /data/applications/nginx/cert: /etc/nginx/cert # ssl证书挂载目录

4.1.5查看容器 或 访问服务器ip地址(检验是否启动成功)

docker ps -a

4.4.5、将 前端项目 拷贝到Linux服务器中nginx容器对应的html目录下

4.5、配置域名的SSL证书

;