• 自從開始用Docker後,現在甚麼都想要容器化一下,這次要把公司的官方網站丟進Docker環境。

第一步、用SSH登入Docker主機,預設帳號密碼如下:

user: docker
pass: tcuser

第二步、先改一下Docker預設密碼。

sudo vi /var/lib/boot2docker/profile

然後把下面這行加進去,每次重開就會更新密碼,參考來源

echo "docker:YourNewPassword"|sudo chpasswd

然後重新開機用新密碼登入看看有沒有效。

sudo reboot

第三步、下載mariadb跟wordpress 映像檔。

docker pull mariadb
docker pull wordpress

第四步、建立mariadb容器。

docker volume create mariadb-data
docker volume inspect mariadb-data

docker run -d --name wordpressdb -v mariadb-data:/var/lib/mysql -e "MYSQL_ROOT_PASSWORD=預設密碼" -e "MYSQL_USER=登入名稱" -e "MYSQL_PASSWORD=登入密碼" -e "MYSQL_DATABASE=資料庫名稱" mariadb

第五步、建立wordpress容器。

docker volume create wordpress-data
docker volume inspect wordpress-data

docker run -d --name wordpress -p 80:80 -v wordpress-data:/var/www/html --link wordpressdb:mysql -e "WORDPRESS_DB_USER=上面的登入名稱" -e "WORDPRESS_DB_PASSWORD=上面登入密碼" -e "WORDPRESS_DB_NAME=上面的資料庫名稱" wordpress

第六步、輸入Docker連線IP後,看到WordPress的安裝畫面就成功了。

備註一、Docker關機前要先關閉網站容器再關閉資料庫容器。

docker stop wordpress
docker stop wordpressdb

備註二、Docker開機後則是要先開啟資料庫容器再開啟網站容器。

docker start wordpressdb
docker start wordpress

同場加映:如何新增一組 443 到容器監聽埠口。

第一步、輸入 sudo -i 切換到 root,這樣才有進入容器資料夾的權限。

sudo -i
cd /var/lib/docker/containers/

第二步、透過容器名稱找出要修改的編號,然後進入容器所屬資料夾。

docker container inspect wordpress | grep Id

第三步、輸入 vi config.v2.json,將 ExposedPorts 物件修改成以下內容。

"ExposedPorts":
{
    "443/tcp":{},
    "80/tcp":{}
}

第四步、輸入 vi hostconfig.json,將 PortBindings 物件修改成以下內容。

"PortBindings":
{
    "443/tcp":[{"HostIp":"","HostPort":"443"}],
    "80/tcp":[{"HostIp":"","HostPort":"80"}]
}

第五步、輸入 reboot 重啟 docker,非常重要!

docker container port wordpress

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *