Docker 中部署 Spring boot 项目

创建 MySQL 容器

$ docker run --name mysql_container -p 3306:3306 -e MYSQL_ROOT_PASSWORD=password -d mysql

创建 Redis 容器

$ docker run --name redis_container -p 6379:6379 -d redis

进入 Redis 容器并启动 redis 客户端

$ docker exec -it redis_container redis-cli

挂载自定义配置文件启动
$ docker run --name redis_container -v $PATH/conf/redis.conf:/usr/local/etc/redis/redis.conf -d redis redis-server /usr/local/etc/redis/redis.conf

创建 Nginx 容器
$ docker run --name nginx_container -p 80:80 -v $PATH/www:/www -v $PATH/conf/nginx.conf:/etc/nginx/nginx.conf -d nginx

进入 Nginx 容器
$ docker exec -it nginx_container /bin/sh

运行项目

参考官方 Demo 
http://spring.io/guides/gs/spring-boot-docker/

创建文件夹,放入项目 jar 包并在同目录下新建 Dockerfile 文件,内容如下:
FROM openjdk:8-jdk-alpine
ADD *.jar app.jar
ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom -jar /app.jar

-Djava.security.egd=file:/dev/./urandom

Tomcat 优化字符串,优化启动速度

注意:如果项目中有使用 java.awt.* 包 (如:验证码),使用 openjdk 是不行的 (报错:初始化 sun.awt.* error),需要使用 sunjdk 


构建镜像
$ docker build -t app/image .
注意第二个参数是 Dockerfile 文件所在目录,.表示当前目录

创建容器并运行项目
$ docker run --name app_container -p 8080:8080 -d app/image

进入 openjdk:8-jdk-alpine 容器

$ docker exec -it CONTAINER /bin/sh


查看项目运行日志(控制台日志)

$ docker logs --follow CONTAINER

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值