使用Docker部署java web項目


在國內可能會有源下載失敗問題,docker安裝失敗,

這里提供docker離線安裝包如有需要可以進行下載

docker離線安裝包下載

##本文環境使用centos 7 進行部署。

#1安裝docker環境

sudo yum remove docker \

                  docker-common \

                  docker-selinux \

                  docker-engine

sudo yum install -y yum-utils \

  device-mapper-persistent-data \

  lvm2

##下載docker的repo包源為國外源。

#國內源為

sudo yum-config-manager \

--add-repo \

https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

##國外源

sudo yum-config-manager \

    --add-repo \

    https://download.docker.com/linux/centos/docker-ce.repo

sudo yum-config-manager --enable docker-ce-edge

sudo yum-config-manager --enable docker-ce-test

sudo yum install docker-ce

sudo systemctl start docker

##使用docker version查看docker是否安裝成功,

systemctl status docker 查看docker服務是否啟動成功。


#2.安裝docker-compose

yum -y install epel-release

yum install python-pip

pip install --upgrade pip

##若install 報錯,多執行幾遍,可能因為網絡原因。

##或者執行 pip install docker-compose --ignore-installed requests 命令進行下載

pip install docker-compose

##使用docker-compose version 進行查看是否安裝成功


#3.在windows下,新建項目名稱的文件夾

##創建.env,Dockerfile.apache,Dockerfile.mysql,utf8.conf,docker-compose.yml文件

##將maven的tar壓縮包放入,sql文件,項目war包放入,主要sql文件導出后需添加創建數據庫的命令,

 

 
Dockerfile.apache文件

 

 
Dockerfile.mysql文件

 

 
.env文件

 

 
docker-compose.yml文件

##完成后打包放到docker服務器下

##解壓壓縮包,進入到文件夾內

##注意,因為國內網速原因,需要添加加速器,否則下載鏡像速度很慢,或者會失敗

##執行下面命令,進行添加加速器

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://53970d32.m.daocloud.io

#執行完成后,需要重啟docker服務

sudo systemctl restart docker

##執行命令,進行pull鏡像文件

docker-compose up -d

##完成后ip:8080/項目名 進行訪問

 


#4.遇到問題及解決方案

1、docker環境部署失敗,沒有外網,可進行更換阿里源或清華源進行安裝docker

2、mysql啟動失敗。可查看日志

##sudo docker logs -f -t --tail 10 容器名稱   進行查看錯誤原因進行解決

3、tomcat連接mysql報超時錯誤

 

 
錯誤日志

#解決方法,進入到mysql容器內

sudo docker exec -it mysql容器id  /bin/bash

##下載vim編輯器

apt-get update

apt-get install vim

##編輯 vim /etc/mysql/my.conf 添加配置

[mysqld]

wait_timeout=86400

interactive_timout=7200

##保存退出

重新啟動mysql容器。

 

 


若有錯誤之處,請及時聯系本人進行修改解決。

本文經過作者長時總結以及學習,創作不易,轉載請著名出處

再此感謝所有幫助過我的人。

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM