一、安装Docker环境
搭建完成虚拟机之后
通过xshell远程控制实现安装Docker
(1)首先关闭虚拟机防火墙
# 关闭运行的防火墙
systemctl stop firewalld.service
# 禁止防火墙自启动
systemctl disable firewalld.service
(2)然后安装Docker
# 安装
Docker yum -y install docker
# 启动
docker systemctl start docker
(3)开启远程docker服务
# 修改docker配置文件
vim /lib/systemd/system/docker.service
# 在ExecStart=后添加配置,远程访问docker的端口为2375
ExecStart=/usr/bin/dockerd-current
-H tcp://0.0.0.0:2375
-H unix://var/run/docker.sock \
--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
--default-runtime=docker-runc \
--exec-opt native.cgroupdriver=systemd \
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
--init-path=/usr/libexec/docker/docker-init-current \
--seccomp-profile=/etc/docker/seccomp.json \
$OPTIONS \
$DOCKER_STORAGE_OPTIONS \
$DOCKER_NETWORK_OPTIONS \
$ADD_REGISTRY \
$BLOCK_REGISTRY \
$INSECURE_REGISTRY \
$REGISTRIES
# 重启
dockersystemctl daemon-reload
systemctl restart docker
二、安装Mysql容器
(1)拉取mysql镜像
docker pull mysql:5.7
(2)启动容器
docker run -itd --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7
(3)使用Navicat连接数据库
(4)将开发时所用的数据导入到生产环境的数据库
三、修改配置文件
# 端口
server:
port: 8080
# 数据源
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql:///travel?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8
username: root
password: 3306
# 上传文件
servlet:
multipart:
max-file-size: 10MB # 最大单个文件
max-request-size: 10MB # 一次请求最大上传
#打包时必须配置该选项才能找到页面
thymeleaf:
mode: HTML
cache: false
prefix: classpath:/templates
# 配置mybatis-plus
mybatis-plus:
global-config:
db-config:
# 主键生成策略为自增
id-type: auto
configuration:
# 关闭列名自动驼峰命名规则映射
map-underscore-to-camel-case: false
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志
# 日志格式
logging:
pattern:
console: '%d{HH:mm:ss.SSS} %clr(%-5level) --- [%-15thread] %cyan(%-50logger{50}):%msg%n'
mail:
user: 2572870097@qq.com
password: gobwnngewozedjjf
project:
path: http://192.168.66.100
四、Maven制作镜像
(1)pom文件中添加docker-maven-plugin
插件
<!-- docker-maven-plugin-->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.2.2</version>
<configuration>
<!-- Docker路径 -->
<dockerHost>http://192.168.66.100:2375</dockerHost>
<!-- Dockerfile定义 -->
<baseImage>openjdk:11</baseImage>
<!-- 作者 -->
<maintainer>zhang</maintainer>
<resources>
<resource>
<!-- 复制jar包到docker容器指定目录 -->
<targetPath>/</targetPath>
<!-- 从哪个包拷贝文件,target包 -->
<directory>${project.build.directory}</directory>
<!-- 拷贝哪个文件 -->
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
<workdir>/</workdir>
<entryPoint>["java", "-jar", "${project.build.finalName}.jar"]</entryPoint>
<forceTags>true</forceTags>
<!-- 镜像名 -->
<imageName>${project.artifactId}</imageName>
<!-- 镜像版本 -->
<imageTags>
<imageTag>${project.version}</imageTag>
</imageTags>
</configuration>
</plugin>
(2)使用maven的packge命令给项目打包
(3)使用maven的docker插件制作插件
(4)查看所有镜像
docker images
(5)启动容器
docker run -d -p 8080:8080 travel:0.0.1-SNAPSHOT
最后访问项目即可