最近同窗買了一臺虛機( centos7 系統 )、一個域名,讓幫忙搭一個我的博客。本着簡單快捷,我的博客採用 wordpress 來搭建。爲了之後博客系統的遷移方便,使用 docker 來安裝 wordpress。下面是此次博客搭建的詳細過程。python
1、更新 centosmysql
yum -y update
2、安裝 dockernginx
yum install docker
啓動 docker:systemctl start dockersql
設置開機啓動:systemctl enable dockerdocker
3、安裝 docker-composevim
docker-compose 是佈署多個容器的簡單有效工具,因爲博客系統搭建須要安裝 wordpress 、mysql 兩個容器,因此採用 docker-compose 來佈署。docker-compose 的安裝有不一樣的方式,這裏採用的是 pip 安裝。centos
一、安裝 python-pip瀏覽器
yum -y install epel-release yum -y install python-pip
二、升級 pipcookie
pip install --upgrade pip
查看安裝是否成功:pip -Vdom
三、安裝 docker-compose
pip install docker-compose
報錯:
Cannot uninstall 「requests」. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
處理:
pip install docker-compose --ignore-installed requests
4、編寫 docker-compose 腳本文件 docker-compose.yml
version: '3.3' services: db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: wordpress123 MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress123 wordpress: depends_on: - db image: wordpress:latest ports: - "9090:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: wordpress123 volumes: db_data: {}
5、使用 docker-compose 構建並運行程序
在 docker-compose.yml 的目錄下運行
docker-compose up -d
瀏覽器輸入:http://0.0.0.0:9090 進入 wordpress 安裝頁面
6、綁定域名
因爲之後還會在這臺機器上佈署其餘系統,因此沒有給 wordpress 暴露到 80 端口,在綁定域名前須要用 nginx 作層代理
一、安裝 nginx
yum install -y nginx
二、配置 nginx
# vim /etc/nginx/nginx.conf ... http { ... server { listen 80; server_name xxx.com; location / { proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REQUEST-URI $request_uri; proxy_set_header Cookie $http_cookie; proxy_pass http://localhost:9090; proxy_cookie_domain domino.server nginx.server; proxy_redirect off; } } }
三、啓動 nginx 並設置開機自動運行
systemctl start nginx.service
systemctl enable nginx.service
四、wordpress 設置,進入 wordpress 管理頁面
二個 URL 都設置爲域名 若是不設置 URL,每次訪問域名會自動跳轉到 http://ip:port
瀏覽器輸入 http://xxxx.com ,一個我的博客誕生了。