Linux用docker部署springboot项目

项目涉及xxl_job,mysql,redis联合部署

Docker安装MYSQL5.7

1.拉取镜像

docker pull mysql:5.7

2.创建容器

docker run -d -p 3306:3306 --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD='123456' --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

3.进入容器

docker exec -it mysql mysql -h 192.168.70.151 -u root -p

4.拷贝xxl_job的SQL文件到mysql容器中

docker cp yyy.sql mysql:/yyy.sql

添加如图配置

5.创建数据库

mysql> create database yyy;
mysql> use yyy;

6.登陆控制台执行source 命令

mysql> source yyy.sql
use xxl_job;
show tables;

如图表示插入数据成功

7.将xxl_job打成jar包

8.编写Dockfile文件

FROM java:8
VOLUME /tmp
ADD xxl-job-admin-2.4.0-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

如图放在同级目录下

9.创建自己的镜像

docker build -t xxl-job-admin:2.4.0-SNAPSHOT .

10.生成docker容器

docker build -t xxl-job-admin:2.4.0-SNAPSHOT .

进入容器:docker exec -it xxl-job-admin /bin/bash

停止容器:docker stop CONTAINER ID

开启容器:docker start CONTAINER ID

查看30分钟日志 docker logs --since 30m <容器名>

删除镜像:docker image rm CONTAINER ID

删除容器:docker rm -f CONTAINER ID

11.查看容器是否运行成功

安装redis

1.拉取镜像

docker pull redis

2.准备挂载的配置文件

mkdir -p /home/redis/myredis

配置文件

# bind 192.168.1.100 10.0.0.1
# bind 127.0.0.1 ::1
#bind 127.0.0.1

protected-mode no
port 6379
tcp-backlog 511
requirepass 000415
timeout 0
tcp-keepalive 300
daemonize no
supervised no
pidfile /var/run/redis_6379.pid
loglevel notice
logfile ""
databases 30
always-show-logo yes
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
replica-serve-stale-data yes
replica-read-only yes
repl-diskless-sync no
repl-disable-tcp-nodelay no
replica-priority 100
lazyfree-lazy-eviction no
lazyfree-lazy-expire no
lazyfree-lazy-server-del no
replica-lazy-flush no
appendonly yes
appendfilename "appendonly.aof"
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
aof-load-truncated yes
aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-max-len 128
notify-keyspace-events ""
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-size -2
list-compress-depth 0
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
hll-sparse-max-bytes 3000
stream-node-max-bytes 4096
stream-node-max-entries 100
activerehashing yes
hz 10
dynamic-hz yes
aof-rewrite-incremental-fsync yes
rdb-save-incremental-fsync yes

3.启动redis

docker run --restart=always --log-opt max-size=100m --log-opt max-file=2 -p 6379:6379 --name myredis -v /home/redis/myredis/myredis.conf:/etc/redis/redis.conf -v /home/redis/myredis/data:/data -d redis redis-server /etc/redis/redis.conf  --appendonly yes  --requirepass 000415

4.通过docker ps指令查看启动状态

docker ps -a |grep myredis

5.查看容器运行日志

docker logs --since 30m <容器名>

安装后台项目的镜像

  1. 写DockerFile

FROM java:8
VOLUME /tmp
ADD spring-vue-wms-1.0-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

如图放在同一目录

  1. 项目打jar包

  1. 创建镜像

docker build -t spring-vue-wms:1.0-SNAPSHOT .
  1. 导入项目数据到mysql

create DATABASE test1;
docker cp test1.sql mysql:/test1.sql
 source test1.sql;

5.创建容器

docker run -d -p 9991:9991 --name spring-vue-wms spring-vue-wms:1.0-SNAPSHOT

6.查看容器是否运行成功

swagger成功访问

测试:成功返回数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值