docker安裝wordpress

docker安裝wordpress

docker&wordpress

準備環境

  • linux
  • docker(wordpress/mysql)

docker安裝

windows

如果你是Win10 64位系統,那麼推薦使用Docker for Windows,直接從Docker官方網站下載最新的Docker for Windows安裝包即可,https://docs.docker.com/docker-for-windows/install/

如果不是Win10 64位系統,則可以下載Docker Toolbox,https://docs.docker.com/toolbox/toolbox_install_windows/

安裝包下載之後直接雙擊安裝即可,安裝詳細過程可以參考文檔說明,安裝完成之後,進入命令行。

linux

詳細的分步驟的安裝說明可以參見官方文檔,https://docs.docker.com/engine/installation/linux/ubuntu/。

在官方文檔中詳細說明了不同Linux系統的安裝方法,安裝流程根據文檔一步步執行即可安裝成功。

但是爲了使得安裝更加方便,Docker官方還提供了一鍵安裝腳本,使用它會使得安裝更加便捷,不用再去一步步執行命令安裝了,在此介紹一下一鍵腳本安裝方式。

首先是Docker官方提供的安裝腳本,相比其他腳本,官方提供的一定更靠譜,安裝命令如下:

curl -sSL https://get.docker.com/ | sh

只要執行如上一條命令,等待一會兒Docker便會安裝完成,非常方便。

但是官方腳本安裝有一個缺點,那就是慢,也可能下載超時,所以爲了加快下載速度,我們可以使用國內的鏡像來安裝,所以在這裏還有DaoCloud的安裝腳本。

DaoCloud安裝腳本:

curl -sSL https://get.daocloud.io/docker | sh

Mac OS

Mac平臺同樣有兩種選擇,Docker for Mac和Docker Toolbox。

Docker for Mac要求系統爲OS X EI Captain 10.11或更新,至少4GB內存,如果你的系統滿足此要求,則強烈建議安裝Docker for Mac。

可以使用HomeBrew安裝,安裝命令如下:

brew cask install docker

另外也可以手動下載安裝包安裝,安裝包下載地址爲:https://download.docker.com/mac/stable/Docker.dmg

下載完成之後直接雙擊安裝包,然後將程序拖動到應用程序中即可。

點擊程序圖標運行Docker,會發現在菜單欄中出現了Docker的圖標

國內鏡像

配置文件

在 /etc/docker/daemon.json 中寫入如下內容(如果文件不存在請新建該文件)

{
  "registry-mirrors": [
    "https://dockerhub.azk8s.cn",
    "https://reg-mirror.qiniu.com",
    "https://registry.docker-cn.com"
  ]
}

重啓Docker

sduo systemctl restart docker

其他方法

安裝好Docker之後,在運行測試命令時,我們會發現它首先會下載一個Hello World的鏡像,然後將其運行,但是下載速度有時候會非常慢,這是因爲它默認還是從國外的Docker Hub下載的,所以爲了提高鏡像的下載速度,我們還可以使用國內鏡像來加速下載,所以這就有了Docker加速器一說。

推薦的Docker加速器有DaoCloud。

DaoCloud:https://www.daocloud.io/mirror

不同平臺的鏡像加速方法配置可以參考DaoCloud的官方文檔:http://guide.daocloud.io/dcs/daocloud-9153151.html。

配置完成之後,可以發現鏡像的下載速度會快非常多。

docker安裝mysql

創建存放目錄

mkdir -p ~/mysql/data ~/mysql/logs ~/mysql/conf

data目錄將映射爲mysql容器配置的數據文件存放路徑

logs目錄將映射爲mysql容器的日誌目錄

conf目錄裏的配置文件將映射爲mysql容器的配置文件

拉取mysql鏡像

任選其一

# 阿里雲鏡像
docker pull registry.cn-hangzhou.aliyuncs.com/acs-sample/mysql:5.7
#帶版本號的mysql服務
docker pull mysql/mysql-server:5.7
#不帶版本號的mysql服務
docker pull mysql/mysql-server
#拉取最新版本,可以不加latest
docker pull mysql:latest

安裝鏡像

docker run -p 3308:3306 -m 300m --name wordpress-sql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5
  • -p: 指定端口映射,格式爲:主機(宿主)端口:容器端口
  • -P: 隨機端口映射,容器內部端口隨機映射到主機的高端口
  • **-m 😗*設置容器使用內存最大值
  • –name : 爲容器指定一個名稱;
  • –volume , -v: 綁定一個卷
  • -e : 設置環境變量;查看mysql
  • -d: 後臺運行容器,並返回容器ID;

docker安裝wordpress

拉取鏡像

docker pull wordpress:latest

安裝鏡像並連接數據庫

使用docker的mysql

docker run --name blog-wordpress --link wordpress-sql:mysql -e 500m -p 8083:80 -v /root/wordpress-html:/var/www/html -d wordpress

使用外部數據庫

docker run --name wordpress-sql -e WORDPRESS_DB_HOST=10.1.2.3:3306 -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=123456 -d wordpress

WORDPRESS_DB_HOST參數是MySQL的數據庫端口號,WORDPRESS_DB_USER是要數據庫用戶名,WORDPRESS_DB_PASSWORD是數據庫密碼。這裏的WORDPRESS_DB_HOST參數不能填寫localhost,因爲這樣會重定向到WordPress鏡像內部的localhost,而這個鏡像中實際上沒有安裝MySQL。所以這裏需要填寫本機IP地址,才能正確訪問到Docker外部的本機的數據庫。

因此需要注意,如果使用外部數據庫的話,數據庫的用戶需要具有外部IP的權限,因爲這次不是通過本機迴環地址訪問。默認情況下MySQL安裝時候的ROOT用戶只允許本地登錄,所以可能需要配置允許用戶遠程登錄。

docker常用命令

查看鏡像

docker images

創建鏡像

 docker create -it mysql:5.7

構造容器

# 構建容器
docker build -t 鏡像名稱 .     # 後面的. 指的是當前文件夾 (其實是Dockerfile存放的文件夾)

# 建立映像文件。–rm 選項是告訴Docker,在構建完成後刪除臨時的Container,Dockerfile的每一行指令都會創建一個臨時的Container,一般這些臨時生成的Container是不需要的
docker build --rm=true -t loen/lamp .

停止

# 關閉運行中的容器
docker stop 容器ID

開始

# 啓動一個已經停止的容器
docker start 容器ID

# 重啓一個容器
docker restart 容器ID

進入鏡像

# 進入一個運行中的容器
docker attach 容器ID

刪除

# 刪除容器
docker rm 容器ID

# 刪除所有容器
docker rm $(docker ps -a) 

# 刪除所有鏡像
docker rmi $(docker images | grep -v RESPOSITORY | awk '{print $3}')

查看進程

# 顯示全部容器
docker ps -a

# 顯示當前運行的容器
docker ps

導出容器

# 導出容器
docker export 容器ID > xxx.tar

保存鏡像

# 把 mynewimage 鏡像保存成 tar 文件
docker save myimage | bzip2 -9 -c> /home/save.tar.bz2

加載鏡像

# 加載 myimage 鏡像
bzip2 -d -c < /home/save.tar.bz2 | docker load
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章