使用docker + wordpress搭建我的站點

記得以前建站還得先在服務器準備LAMP環境, 安裝步驟細碎繁瑣. 如今有docker搭建站點可就方便多了. 虛擬化容器技術大行其道是有緣由的, 由於真的很好用!html

1.準備工做 尋找一個雲服務提供商. : 阿里雲優惠連接: 3年228起
初始化一個ECS實例, 選用操做系統centOS某個穩定版本(好比7 x64)mysql

2.安裝 yum-utilsgit

$ sudo yum install -y yum-utils \

device-mapper-persistent-data \

lvm2

3.切換成清華大學的 Docker 安裝源, 規避牆的影響github

$ sudo yum-config-manager \

--add-repo \

https://mydream.ink/utils/container/docker-ce.repo

4.安裝 docker CEsql

$ sudo yum install docker-ce docker-ce-cli containerd.io

 若是彈出導入key的問題, 選擇接受docker

5.配置鏡像加速器數據庫

國內從 Docker Hub 拉取鏡像有時會遇到困難,此時能夠配置鏡像加速器。Docker 官方和國內不少雲服務商都提供了國內加速器服務。完整的加速器列表請見:https://y0ngb1n.github.io/a/docker-registry-mirrors.html?jsjson

新建或修改/etc/docker/daemon.json, 加入bash

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

必定要確保JSON文件的格式沒有問題,不然 docker 沒法啓動,修改完成後執行如下命令:服務器

$ sudo systemctl daemon-reload

啓動 Docker, 設置開機啓動

$ sudo systemctl start docker

$ sudo systemctl enable docker

第二部分,, 準備容器

$ docker pull mariadb ###拉取MariaDB鏡像
$ docker run -d -p 3306:3306 -e MYSQL\_ROOT\_PASSWORD=在這裏輸入你要設置的數據庫密碼 $(docker images | grep mariadb| awk '{print $1}') ###建立mariadb容器

備註: 

  • docker run :啓動容器 
  • -d:後臺運行容器 
  • -e MYSQL_ROOT_PASSWORD=123456:指定容器的環境參數,此處初始化MariaDB的root密碼 
  • -p 3306:3306:端口映射,這裏將容器內的3306端口映射到本機的3306端口 
  • --name $(docker images | grep mariadb| awk '{print $1}'):使用變量獲取MariaDB的鏡像名稱。可直接寫mariadb

建立以後對其更名

$ docker rename 原容器名稱 mariadb ##將mariadb容器更名爲mariadb

拉一個 wordpress 鏡像

$ docker pull wordpress

如今咱們來運行鏡像,並使之與MariaDB鏡像互相鏈接,也就是直接採用數據庫鏡像的數據庫服務:

$ docker run -itd  -p 80:80 --link mariadb:db  $(docker images | grep wordpress | awk '{print $1}')

而後使用docker ps -a命令就能夠看到,此時容器已經啓動成功

$ docker ps -a

image.png

name那一列不能直接看出容器的做用, 不是很直觀, 因此再給容器重命名, 方便以後引用

$ docker reaname 原容器名 想要的容器名

image.png

第三部分, wordpress配置.
此時訪問服務器的80端口, 是能夠訪問到wordpress服務了. 可是須要進一步的配置. 在wordpress配置頁面, 須要填寫數據庫相關的配置, 咱們須要在服務器作一些自定義的配置, 以後把對應的信息填在wp的配置頁.

image.png

a.查看MySQL容器的IP地址

$ docker inspect db |grep "IPAddress"|awk 'NR==2{print}'|awk '{print $2}'  ##查詢db容器的IP地址

image.png

b.建立一個數據表給wordpress使用

$ docker exec -it mariadb /bin/bash   ##進入數據庫容器
mysql -uroot -p

輸入以前在啓動容器時設定的密碼, 登陸數據庫.
進入以後,咱們須要建立一個數據庫給wordpress使用,因此這時候輸入

create database wordpress;

(注意: 不要忘記分號!!!)
image.png

而後新建一個數據庫用戶用於專屬使用wordpress

CREATE USER 'username'@'%' IDENTIFIED BY 'password';

image.png

建立完成以後給予該用戶相關操做權限,下面這個命令就是給該用戶對wordpress數據庫全部的操做權限

grant all on wordpress.* to 'username'@'%' with grant option;

image.png
最後還須要刷新一下權限

flush privileges;

這時候就能夠回到網頁那裏了,輸入剛纔那些信息就能夠了
image.png

相關文章
相關標籤/搜索