1.先把wordpress的鏡像下載下來mysql
docker pull wordpress
2.下載mysqlsql
docker pull mysql:lastest
3.啓動mysqldocker
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
name參數指定要啓動的實例名稱這裏我稱mysql實例爲some-mysql,MYSQL_ROOT_PASSWORD指定ROOT密碼。tag參數是MySQL的版本號,能夠是5.七、5.六、8.0。數據庫
4.啓動wordpress 並鏈接 mysql(應該是拉wordpress時自動配置了運行環境)瀏覽器
安裝好數據庫以後,就能夠啓動WordPress了。詳細的文檔參考這裏。若是使用Docker中安裝的MySQL實例,使用下面的命令。bash
docker run --name some-wordpress --link some-mysql:mysql -p 8080:80 -d wordpress
name參數指定要啓動的WordPress實例名稱,link參數指定要使用的Docker MySQL實例名稱,p參數將Docker內部的80端口映射到本地的8080端口上。網絡
若是使用外部的MySQL數據庫,則輸入下面的命令。wordpress
docker run --name some-wordpress -e WORDPRESS_DB_HOST=10.1.2.3:3306 \ -e WORDPRESS_DB_USER=... -e WORDPRESS_DB_PASSWORD=... -d wordpressspa
WORDPRESS_DB_HOST參數是MySQL的數據庫端口號,WORDPRESS_DB_USER是要數據庫用戶名,WORDPRESS_DB_PASSWORD是數據庫密碼。這裏的WORDPRESS_DB_HOST參數不能填寫localhost,由於這樣會重定向到WordPress鏡像內部的localhost,而這個鏡像中實際上沒有安裝MySQL。因此這裏須要填寫本機IP地址,才能正確訪問到Docker外部的本機的數據庫。命令行
所以須要注意,若是使用外部數據庫的話,數據庫的用戶須要具備外部IP的權限,由於此次不是經過本機迴環地址訪問。默認狀況下MySQL安裝時候的ROOT用戶只容許本地登陸,因此可能須要配置容許用戶遠程登陸。
而後打開瀏覽器,輸入localhost:8080(端口號是命令中設置的),而後就能夠看到WordPress了。按照提示輸入用戶名等信息,而後安裝WordPress。等到它提示安裝完成,那麼WordPress的安裝就算大功告成了。
最後稍加配置,再添加諸如內網映射等功能以後,站點就能夠對外訪問了。
實踐證實,用fig配置是最好的途徑。在上面的基礎上,咱們只需在本身的docker目錄下新建目錄如wordpress-docker,再建fig配置文件fig.yml以下:
wordpress: image: "wordpress:latest" ports: - "8080:80" links: - db:mysql db: image: "mysql:latest" expose: - "3306" environment: - MYSQL_ROOT_PASSWORD=wordpress
總結:
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql docker run --name some-wordpress --link some-mysql:some-mysql -p 8080:80 -d wordpress
這時想到只是跑了數據庫 可是沒有設置啊
容器有本身的內部網絡和 IP 地址,可使用 docker inspect + 容器ID 獲取容器的具體信息。
如今要設置 只能先把端口從docker映射到 本機,而後用 mysql鏈接
docker stop some-mysql #這句是刪除實例的 docker rm some-mysql
而後又搞了一遍
docker run --name some-mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql
進去 鏈接一下
#進入mysql容器 用命令行控制mysql建立數據庫 docker exec -it some-mysql bash create database wordpress;