Docker入門系列 Docker應用部署(九)

2021-10-02 22:18:24 字數 3269 閱讀 3080

mysql部署

在docker容器中部署mysql,並通過外部mysql客戶端操作mysql server

部署mysql

1.搜尋mysql像

docker search mysql

2.拉取mysql映象

docker pull mysql:5.6

3.建立容器,設定埠對映、目錄對映

# 在/root目錄下建立mysql目錄用於儲存mysql資料資訊

mkdir /root/mysql //建立mysql目錄

cd /root/mysql //進入mysql目錄

docker run -it \

-p 3307:3306 \

--name=c_mysql

-v $pwd/conf:/etc/mysql/conf.d \

-v $pwd/logs:/logs \

-v $pwd/data:/var/lib/mysql \

-e mysql_root_password=123456 \

mysql:5.6

引數說明:

* -p 3307:3306:將容器的3306埠對映到宿主機的3307埠

* -v $pwd/conf:/etc/mysql/conf.d:將主機當前目錄下的conf/my.cnf掛載到容器的/etc/mysql/my.cnf。配置目錄。

* -v $pwd/logs:/logs:將主機當前目錄下logs目錄掛載到容器的logs。日誌目錄

* -v $pwd/data:/var/lib/mysql:將主機當前目錄下的data目錄掛載到容器的/var/lib/mysql。資料目錄

* -e mysql_root_password=123456:初始化root使用者密碼

4.進入建立的容器

docker exec -it c_mysql /bin/bash

5.進入mysql資料庫

mysql -uroot -p123456

tomcat部署

1.搜尋tomcat映象

docker search tomcat

2.拉取tomcat映象

docker pull tomcat

3.建立容器、設定埠對映、目錄對映

# 在/root目錄下建立tomcat目錄用於儲存tomcat資料資訊

mkdir /root/tomcat

cd /root/tomcat

docker run -id --name=c_tomcat \

-p 8080:8080 \

tomcat

引數說明:

* -p 8080:8080:將容器的8080埠對映到宿主機的8080埠

4.使用瀏覽器訪問

192.168.199.100:8080

nginx部署

在docker容器中部署nginx,並通過外部機器訪問nginx

1.搜尋nginx映象

docker search nginx

2.拉取nginx映象

docker pull nginx

3.建立容器,設定埠對映、目錄對映

# 在/root/目錄下建立nginx目錄用於儲存nginx資料資訊

mkdir /root.nginx

cd /root/nginx

docker run -id --name=c_ngixn \

-p 80:80

-v $pwd/conf/nginx.conf:/etc/nginx/nginx.conf \

-v $pwd/logs:/var/log/nginx \

-v $pwd/html:/usr/share/nginx/html \

nginx

引數說明:

* -p 80:80:將容器的80埠對映到宿主機的80埠

* -v $pwd/conf/nginx.conf:/etc/nginx/nginx.conf:在主機當前目錄下的/conf/nginx.conf掛載到容器(將官方給出的nginx配置檔案貼上到nginx.conf檔案中)

nginx配置檔案如下:

#user nobody;

#nginx程序,一般數值為cpu核數

worker_processes 1;

#錯誤日誌存放目錄

#error_log logs/error.log;

#error_log logs/error.log notice;

#error_log logs/error.log info;

#程序pid存放位置

#pid logs/nginx.pid;

#工作模式及連線數上限

#錯誤頁面

#error_page 404 /404.html;

# 將伺服器錯誤頁面重定向到靜態頁面/50x.html

error_page 500 502 503 504 /50x.html;

location = /50x.html

#**php指令碼到apache上監聽127.0.0.1:80

#location ~ \.php$

#將php指令碼傳遞到正在監聽127.0.0.1:9000的fastcgi伺服器

#location ~ \.php$

#如果apache的文件根目錄與nginx的根目錄一致,則拒絕訪問.htaccess檔案

#location ~ /\.ht

}#另乙個虛擬主機,混合使用ip、名稱和基於埠的配置

#}}

redis部署

1.搜尋redis映象

docker search docker

2.拉取redis映象

docker pull redis:5.0

3.建立容器,設定埠對映

docker run -id --name c_redis -p 6379:6379 redis:5.0

4.使用外部機器連線redis

./redis-cli.exe -h 192.168.199.100 -p 6379

Docker學習收藏系列(一) 認識Docker

1 docker 是乙個軟體平台,讓您可以快速構建 測試和部署應用程式。docker 將軟體打包成名為容器的標準化單元,這些單元具有執行軟體所需的所有功能,包括庫 系統工具 和執行時。使用 docker,您可以將應用程式快速部署和擴充套件到任何環境中,並且知道您的 將執行。2 docker工作原理 ...

Docker系列四 使用UI管理docker容器

一 什麼是portainer?docker pull portainer portainer三 執行portainer portainer執行方式有以下兩種方式 1 單機版執行 如果僅有乙個docker宿主機,則可使用單機版執行,執行以下命令就可以啟動了 docker run d p 9000 90...

Docker入門系列2 安裝

docker容器的啟動可以在秒級實現,這相比傳統的虛擬機器方式要快得多。其次,docker對系統資源的利用率很高,一台主機上可以同時執行數千個docker容器。對開發和運維人員來說,最希望的就是一次建立或配置,可以在任意地方正常執行。開發者可以使用乙個標準的映象來構建一套開發容器,開發完成之後,運維...