- #安裝docker
- 參考:阿里雲安裝docker
sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum makecache fast sudo yum -y install docker-ce sudo service docker start
- #使用國內鏡像倉庫
/etc/docker/daemon.json { "registry-mirrors": ["https://registry.docker-cn.com"] }
- #下載鏡像
docker pull wordpress:latest
docker pull mysql:5.6
- #運行docker
docker run --name wordpress1 \ -e WORDPRESS_DB_HOST=172.17.199.38:3306 \ -e WORDPRESS_DB_USER=root \ -e WORDPRESS_DB_PASSWORD=123456 \ -e WORDPRESS_DB_NAME=wp1 \ -p 888:80 \ -d wordpress\
WORDPRESS_DB_HOST 數據庫主機地址(默認為與其 link 的 mysql 容器的 IP 和 3306 端口:) WORDPRESS_DB_USER 數據庫用戶名(默認為 root) WORDPRESS_DB_PASSWORD 數據庫密碼(默認為與其 link 的 mysql 容器提供的 MYSQL_ROOT_PASSWORD 變量的值) WORDPRESS_DB_NAME 數據庫名(默認為 wordpress) WORDPRESS_TABLE_PREFIX 數據庫表名前綴(默認為空,您可以從該變量覆蓋 wp-config.php 中的配置) 如果 WORDPRESS_DB_NAME 變量指定的數據庫不存在時,那么 wordpress容器在啟動時就會自動嘗試創建該數據庫,但是由 WORDPRESS_DB_USER變量指定的用戶需要有創建數據庫的權限。 這里的WORDPRESS_DB_HOST參數不能填寫localhost,因為這樣會重定向到WordPress鏡像內部的localhost,而這個鏡像中實際上沒有安裝MySQL。所以這里需要填寫本機IP地址,才能正確訪問到Docker外部的本機的數據庫。 因此需要注意,如果使用外部數據庫的話,數據庫的用戶需要具有外部IP的權限,因為這次不是通過本機回環地址訪問。默認情況下MySQL安裝時候的ROOT用戶只允許本地登錄,所以可能需要配置允許用戶遠程登錄。
2.連接docker mysql啟動
docker run --name wp_mysql56 \ -p 3307:3306 \ -v /data/docker/mysql:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD='123456' \ -d mysql:5.6
-d:后台運行容器 –-name wp_mysql56:指定容器的名字,不能重復,不指定隨機生成 -v /data/docker/mysql:/var/lib/mysql: 添加目錄映射, 容器中的/var/lib/mysql映射到主機的/data/docker/mysql -e MYSQL_ROOT_PASSWORD=123456:指定容器的環境參數,此處初始化MySQL的root密碼 -p 3307:3306:端口映射,這里將容器內的3306端口映射到宿主機的3307端口 mysql:鏡像的名字,首先從本地加載,沒有則從鏡像倉庫下載 查看MySQL日志: docker logs wp-mysql
docker run --name wordpress2 \ --link wp_mysql56:mysql \ -v /data/docker/html:/var/www/html \ -p 888:80 \ -d wordpress
docker run :啟動容器 -d:后台運行容器 –name wordpress2:指定容器的名字 –link wp_mysql56:mysql:容器關聯,現在啟動的容器內部可以通過mysql來訪問wp_mysql56數據庫的功能 -p 888:80:端口映射 wordpress:鏡像的名字
#進入容器
docker exec -it wordpress2 /bin/bash
#無法上傳大文件
#上傳主題需要驗證ftp