docker安裝mysql
mysql最穩定的版本是5.7,所以我們這裏使用docker安裝mysql5.7。
1.下載鏡像
docker pull mysql:5.7
2.運行容器
docker run -p 3306:3306 --name mysql -v /data/mysql/conf:/etc/mysql/conf.d -v /data/mysql/logs:/logs -v /data/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=****** -d mysql:5.7
MYSQL_ROOT_PASSWORD
爲root用戶的密碼。
-v
是將文件或者目錄掛載進容器
運行docker ps
如果有mysql,說明成功,可以通過mysql的圖形化管理工具,通過3306端口連接測試。
docker安裝tomcat
問題
在使用docker安裝tomcat時發現,雖然安裝好tomcat了,但是使用ip+端口形式訪問tomcat,不能顯示默認的頁面。即下圖的頁面:
原因
原來是在docker安裝的tomcat在8.0.52版本之後,默認移除了默認顯示的頁面(webapps下的文件是空的),所以這裏我們安裝tomcat8.0.52.
安裝
1.下載鏡像
docker pull tomcat:8.0.52`webapps`
2.運行容器
docker run -p 8080:8080 --name tomcat -v /usr/local/dockerApp/tomcat/webapps/test:/usr/local/tomcat/webapps/test --restart=always -d tomcat:8.0.52
--restart=always
代表開機自啓動容器。
將/usr/local/dockerApp/tomcat/webapps/test
掛載在容器裏,這樣在test下面的靜態資源就可以直接被訪問,通過ip:端口/test
就可以訪問。同理test
可以靈活修改。
如果直接掛載webapps
,應該需要將容器內webapps
的內容複製進掛載目錄,否則可能導致訪問不到。
docker安裝nginx
1.下載鏡像
docker pull nginx
這裏不加版本,默認下載最新版本
2.運行容器
docker run -p 80:80 --name nginx -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx --restart=always -d nginx
將nginx的配置文件和日誌文件掛載到容器裏。