Linux环境下使用docker部署SpringBoot+Mysql项目并使用nginx代理

第一步:使用Docker安装mysql 

docker pull mysql

第二步:启动mysql

docker run -p 3306:3306  -e MYSQL_ROOT_PASSWORD=root  -d mysql:5.7

第三步:进入容器创建数据库和相应的表数据

第四步:使用docker inspect 容器id 查看mysql的ip

第五步:更改数据库连接信息

第六步:使用maven打包springboot项目

第七步:将jar包上传到服务器,与Dockerfile同一目录 

Dockerfile配置

# Docker image for springboot file run
# 172.16.7.253.jar  172.17.0.1.jar  172.18.0.1.jar
# VERSION 0.0.1
# Author: eangulee
# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER eangulee <[email protected]>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD api-0.0.1-SNAPSHOT.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

构建镜像 docker build -t myapp:v1 . (有一个点)

第八步:启动Springboot项目

--link=[mysql的name:取的别名]

第九步:拉取nginx并启动

docker pull nginx

docker run -d  --name nginxserver  -p 80:80 nginx:latest

第十步:进入nginx容器修改default.conf配置文件

查看linux的局域网地址

最后,退出exit容器

停止nginx docker stop nginxserver

启动nginx docker strart nginxserver即可访问

如果使用nginx不行,就先不需要nginx 直接将springboot项目的端口映射为80

-p 80:8080

访问看看。

猜你喜欢

转载自blog.csdn.net/qq_41750725/article/details/104040239