最近在學習springboot,剛寫完一個demo谢鹊;下面使用docker部署彻磁。作為自己的學習日記。
安裝docker:
yum install docker?
啟動docker:
systemctl start docker
查看docker狀態(tài):
systemctl status docker
使用Docker 中國加速器:
vi /etc/docker/daemon.json
#添加后:
{
? "registry-mirrors": ["https://registry.docker-cn.com"],
? "live-restore": true
}
從新啟動docker:
systemctl restart docker
輸入docker version?返回版本信息則安裝正常:
安裝 JDK?
1. yum -y install java-1.8.0-openjdk*
配置環(huán)境變量 打開?vim /etc/profile?添加一下內(nèi)容
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64
export PATH=$PATH:$JAVA_HOME/bin
修改完成之后辙浑,使其生效
source /etc/profile
輸入java -version?返回版本信息則安裝正常激涤。
安裝MAVEN
下載:http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.2/binaries/apache-maven-3.5.2-bin.tar.gz
## 解壓?
tar vxf apache-maven-3.5.2-bin.tar.gz?
## 移動?
mv apache-maven-3.5.2 /usr/local/maven3
修改環(huán)境變量, 在/etc/profile中添加以下幾行:
MAVEN_HOME=/usr/local/maven3
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
執(zhí)行source /etc/profile使環(huán)境變量生效
輸入mvn -version?返回版本信息則安裝正常
部署
項目結(jié)構(gòu):
docker-compose.yml:
app-Dockerfile:
#指定基礎鏡像??maven:3.5 和 jdk-8
? ??????FROM maven:3.5-jdk-8
mysql-dockerfile 和 mysql配置文件:
#指定基礎鏡像?mysql:5.7.23?
????FROM mysql:5.7.23
#設置編碼格式
????ENV LANG C.UTF-8
# 拷貝文件到容器(./是指docker-compose.xml文件位置)
????COPY ./docker/mysql/my.cnf etc/mysql/mysql.conf.d/my.cnf
應用創(chuàng)建與邏輯 就不貼出來了判呕,非常簡單的增刪改查倦踢。
值得注意的是:
? ?application-docker.properties 中數(shù)據(jù)庫url 送滞,mwbwfm-mysql 應和docker-compose.yml中的mysql 服務名稱一致;也就是此例中的mwbwfm-mysql且需要設置useSSL=false和serverTimezone=Asia/Shanghai:
使用terminal cd 到? docker-compose.yml? 文件所在路徑 執(zhí)行 docker-compose up :
使用docker-compse logs 查看啟動日志
至此硼一,docker-compose 部署springboot + mysql 已經(jīng)完成累澡,在本地 訪問 http://localhost:9091(此例中映射宿主機的端口是9091)