docker+nginx部署前后端分离项目(速成)
编写Nginx的配置文件nginx.conf。安装完后赋予可执行权限。
·
首先
docker 卸载(清除环境)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine1
rm -rf /etc/systemd/system/docker.service.d
rm -rf /var/lib/docker
rm -rf /var/run/docker
#列出docker安装过的相关包
sudo yum list installed | grep docker
#删除相关安装包
sudo yum -y remove docker-ce.x86_64
sudo yum -y remove docker-ce-selinux.noarch
#删除相关的镜像与容器
sudo rm -rf /var/lib/docker
sudo yum remove docker docker-common docker-selinux docker-engine
——————————————————————————————————————————————>
应该可以了docker
1、查询docker已安装的包
yum list installed | grep docker
2、删除已安装的包
yum remove docker-ce.x86_64 ddocker-ce-cli.x86_64 -y
3、删除镜像/容器
rm -rf /var/lib/docker
一.安装docker
yum install docker
- 检查是否安装成功
docker --version
- 启动Docker
systemctl start docker
- 安装docker-compose
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
可能下不来
(解决方案)
[docker-compose资源](https://download.csdn.net/download/qq_56352553/87967438?spm=1001.2014.3001.5503) /usr/local/bin/docker-compose
放 https://download.csdn.net/download/qq_56352553/87967438?spm=1001.2014.3001.5503
安装完后赋予可执行权限
sudo chmod +x /usr/local/bin/docker-compose
检查是否安装成功
docker-compose --version
二、前端部署
npm run build
打包
编写Nginx的配置文件nginx.conf
#user root;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8081;
server_name 111.222.21.111;
location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html last; # 别忘了这个哈
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
三、编写Dockfile文件
#依赖jdk8环境
FROM openjdk:8
#对外暴露8080
EXPOSE 8080
#复制server-1.0-SNAPSHOT到docker容器中并命名为app.jar
ADD server-1.0-SNAPSHOT.jar app.jar
#执行命令
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java", "-jar", "/app.jar", "--spring.profiles.active=pro"]
四、编写docker-compose.yml文件
version: "3"
services:
nginx: # 服务名称,用户自定义
image: nginx:latest # 镜像版本
ports:
- 80:80 # 暴露端口
volumes: # 挂载
- /root/nginx/html:/usr/share/nginx/html
- /root/nginx/nginx.conf:/etc/nginx/nginx.conf
privileged: true # 这个必须要,解决nginx的文件调用的权限问题
mysql:
image: mysql:5.7.28
ports:
- 3306:3306
environment: # 指定用户root的密码
- MYSQL_ROOT_PASSWORD=123456
redis:
image: redis:latest
server:
image: server:latest
build: . # 表示以当前目录下的Dockerfile开始构建镜像
ports:
- 8085:8085
depends_on: # 依赖与mysql、redis,其实可以不填,默认已经表示可以
- mysql
- redis
输入命令编排启动服务
docker-compose up -d
更多推荐
所有评论(0)