Menu

GoDaddy搬家到Azure(從GoDaddy WORDPRESS託管搬到Azure VM)

June 19, 2016 - Azure, 網站開發

我的GoDaddyWordPress 託管一年的約到了,當初因為MSDN 訂閱(MSDN Subscriber)到期,想說沒有免費的Azure可以用,只好付錢給GoDaddy,沒想到後來公司又給訂閱服務,趕快在到期前一天把wordpress又搬回Azure.

記得第一次在Azure用Wordpress,根據Azure樣板(template)是內建ClearDB,而且免費的的額度只有20MB跟4個連線數,小就算了,速度還慢到一個不可思議,這八成是微軟跟這間廠商有簽了甚麼合約,這問題已經有一堆人在抱怨(超過1500個人反應),可以參考這裡這裡,再來ClearDB的費用不能用免費的Azure額度,無奈只好自己建立VM的方式來處理吧,這裡最快的方法就是找人家做好的docker repository ,一次把Apache+PHP+wordpress+mysql打成一包裝起來。

找了一下Azure的Marketplace發現已經有這個,就試著安裝看看,但是最後在deploy的時候出現錯誤(好像是azure-docker-extension相關的錯誤),不過我懶得找錯誤,就挑到自己手動裝!

wordpress_mysql_docker

接下來因為我選的VM是Ubuntu 15,所以都用打指令的方式,首先用ssh進到ubuntu裡面,檢查版本,
docker -v

docker-compose -v

再來去docker hub找人家整理好的repository ,一開始先試了下這個,但是每次stop container後再重啟,網站就壞掉了(問題好像是無法連結之前的檔案),這裡看一看,也懶得找問題就換下一個repository,下一個是bitnami出的版本,由於有支援docker-compose,可以直接跳著看到”Specifying Environment variables using Docker Compose”這部分,先用nano建立一個yml檔案,

nano docker-compose.yml

再來把該填的設定,原封不用貼上去,然後特別是username & password,建議不要用預設的

WORDPRESS_USERNAME: WordPress application username. Default: user
WORDPRESS_PASSWORD: WordPress application password. Default: bitnami

ctrl + x 存檔後,就可以跑
docker-compose -d up

再來把舊的wordpress跟新的wordpress都裝上All-in-One WP Migration,照著畫面上做export&import,這樣所有內容(文章&資料庫&圖片)就全部都搬到新的網站上。

最後,把DNS設定改一下,這裡看要用CNAME record or A record(選一個可以用就可以)如果要用CNAME要先去Azure先把DNS設定好,可以參考這裡,設定好會像這樣

azure_vm_ip_dns

最後再去GoDaddy的DNS Management,把舊的A record & CNAME record 換成新的就收工。

Tags:

Leave a Reply