docker-compose基于MySQL8部署項目的實現(xiàn)
1.首先按照以下的路徑創(chuàng)建相應(yīng)的文件夾
/usr/local/docker/mysql
2.然后在該目錄下創(chuàng)建docker-compose.yml文件并且在文件中加入以下的配置
version: '3.1' services: db: image: mysql restart: always environment: MYSQL_ROOT_PASSWORD: 123456 command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 --max_allowed_packet=128M; ports: - 3306:3306 volumes: - ./data:/var/lib/mysql adminer: image: adminer restart: always ports: - 8080:8080
3.按照以下的路徑創(chuàng)建相應(yīng)的文件夾
/usr/local/docker/tomcat
4.在該文件夾的目錄下面創(chuàng)建一個docker-compose.yml并且填寫相關(guān)的配置信息(由于這里的上面的宿主機(jī)的8080端口被占用所以這里只能改為其他的端口)
version: '3.1' services: tomcat: restart: always image: tomcat container_name: tomcat ports: - 8082:8080 volumes: - /usr/local/docker/tomcat:/usr/local/tomcat/webapps/ROOT environment: TZ: Asia/Shanghai
注意: 創(chuàng)建的目錄不同那么上面對應(yīng)的 /usr/local/docker/tomcat目錄就不能同
5.如果沒能啟動那么可以直接用啟動命令試試
docker run -p 8082:8080 鏡像id或者鏡像名稱
6.在將項目上傳到和tomcat的同級目錄下面解壓縮然后運(yùn)行就可以實現(xiàn)部署
說明:
一個容器可以部署一個項目,那么是不是很奇怪,假如說我在同一臺服務(wù)器上面部署了三個應(yīng)用一個前端的UI一個后端的Admin,一個數(shù)據(jù)庫MySQL,那么后端要管理前端的數(shù)據(jù),而他們的配置文件docker-compose分別為以下
admain 路徑:/usr/local/docker/tomcat
version: '3.1' services: tomcat: restart: always image: tomcat container_name: tomcat ports: - 8082:8080 volumes: - /usr/local/docker/tomcat:/usr/local/tomcat/webapps/ROOT environment: TZ: Asia/Shanghai
UI: /usr/local/docker/tomcat_ui
version: '3.1' services: tomcat: restart: always image: tomcat container_name: tomcatui ports: - 8083:8080 volumes: - /usr/local/docker/tomcat_ui:/usr/local/tomcat/webapps/ROOT environment: TZ: Asia/Shanghai~
mysql 路徑: /usr/local/docker/mysql
docekr-compose的配置
version: '3.1' services: db: image: mysql restart: always environment: MYSQL_ROOT_PASSWORD: 123456 command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --explicit_defaults_for_timestamp=true --lower_case_table_names=1 ports: - 3306:3306 volumes: - ./data:/var/lib/mysql adminer: image: adminer restart: always ports: - 8080:8080
后端管理前端的數(shù)據(jù)是如何做到的呢,其實者就要聯(lián)系到你部署的項目了,項目里有配置一個數(shù)據(jù)連接配置如下
# JDBC jdbc.driverClass=com.mysql.jdbc.Driver jdbc.connectionURL=jdbc:mysql://192.168.206.128:3306/twg?useUnicode=true&characterEncoding=utf-8&useSSL=false jdbc.username=root jdbc.password=123456 # JDBC Pool jdbc.pool.init=1 jdbc.pool.minIdle=3 jdbc.pool.maxActive=20 # JDBC Test jdbc.testSql=SELECT 'x' FROM DUAL
那么這里配置的jdbc.connectionURL=jdbc:mysql://192.168.206.128:3306/twg?useUnicode=true&characterEncoding=utf-8&useSSL=false就是關(guān)鍵了,其實就是通過這個ip來進(jìn)行數(shù)據(jù)管理的。這個ip是mysql部署的服務(wù)器ip,那么部署的項目連接配置都是指向的這個ip,這樣也就讓后臺獲得了這個數(shù)據(jù)庫的數(shù)據(jù),直接管理了前臺的數(shù)據(jù)。而且數(shù)據(jù)庫可視化界面比如Navicat和SQLyog等用數(shù)據(jù)庫部署的IP比如上面這個IP就可以輕松的對服務(wù)器數(shù)據(jù)庫的數(shù)據(jù)進(jìn)行方便的管理。
如果需要停止某個服務(wù),可以直接在對應(yīng)那個服務(wù)的文件夾下和docker-compose同級的目錄下面用docker-compose down 即可直接停止某個服務(wù)
到此這篇關(guān)于docker-compose基于MySQL8部署項目的實現(xiàn)的文章就介紹到這了,更多相關(guān)docker-compose部署MySQL8內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker?gitea?drone實現(xiàn)超輕量級CI?CD實戰(zhàn)詳解
這篇文章主要為大家介紹了docker?gitea?drone實現(xiàn)超輕量級CI?CD實戰(zhàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10在 docker 之間導(dǎo)出導(dǎo)入鏡像的方法
本篇文章主要介紹了在 docker 之間導(dǎo)出導(dǎo)入鏡像的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07docker-compose 配置spring環(huán)境的方法步驟
這篇文章主要介紹了docker-compose 配置spring環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11使用Docker安裝Nginx并配置端口轉(zhuǎn)發(fā)問題及解決方法
這篇文章主要介紹了使用Docker安裝Nginx并配置端口轉(zhuǎn)發(fā),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-01-01pycharm與ssh遠(yuǎn)程訪問服務(wù)器docker的詳細(xì)教程
這篇文章主要介紹了pycharm與ssh遠(yuǎn)程訪問服務(wù)器docker,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10解決Docker錯誤“docker?build“?requires?exactly?1?argument(s)
這篇文章主要介紹了解決Docker錯誤“docker?build“?requires?exactly?1?argument(s)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08