1.系統配置如下:
‘by: /home/inkhin/桌面/深度截圖_選擇區域_20191004145104.png
[吐槽: ChromeLinux版居然不能用博客園TinyMce的上傳圖片功能]
2.安裝Docker
1 sudo su ‘提升權限 2 pacman -S docker '下載安裝docker 3 systemctl enable docker ‘開機自啟動設置 4 systemclt disable docker ‘關機自關閉設置
參考資料: http://www.docker.org.cn/book/install/arch-install-docker-36.htm
systemctl start docker ‘ 啟動docker
3.安裝鏡像
這里我遇到了一些問題,因為Docker是從國外源下載的,但也不知道是牆還是線路問題,我200M的下行網速被限制到幾十kb/s。查解決方法的時候看見有更換阿里雲的,但是都沒有具體詳解,於是我放棄了這個方法,還有說修改registry-mirrors的,但是我沒有去嘗試,因為我找到一個更方便的東西 docker國內鏡像站 -- Daocloud。
按照后台指示和不同的系統版本你可以使你的宿主機連接上daocloud的控制面板,並且交由后台管理面板來操控。好像是有使用期限的,不過沒事,我們只是要利用它下載一些鏡像就行啦。
安裝需要LNMP等鏡像,就可以開始愉快的項目配置啦。
4.配置代碼
有一件事你要知道,什么是容器和鏡像。
一個容器相當於一個虛擬機,一個虛擬機運行一份鏡像。
Daocloud在安裝鏡像的時候是默認生成一個對應容器的,你應該可以把它取消,但是如果建立了也沒關系,你可以去集群管理-自有集群-查看詳情-刪除掉建立的容器就好了。
為什么要刪除,因為配置很麻煩,已建立的容器可能存在占用默認的端口,但是我們肯定不想依賴面板去更改參數。
安裝配置mySQL:
//mysql的配置 注意,這里是手動安裝的沒有用面板,所以有8.0 //下載 mysql [inkhin-pc inkhin]# docker pull mysql Using default tag: latest latest: Pulling from library/mysql Digest: sha256:6d95fa56e008425121e24d2c01b76ebbf51ca1df0bafb1edbe1a46937f4a149d Status: Downloaded newer image for mysql:latest docker.io/library/mysql:latest //#啟動 [inkhin-pc inkhin]# docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=10584940w! -d mysql //#進入容器 [inkhin-pc inkhin]# docker exec -it mysql bash //#登錄mysql root@62f163f9dc04:/# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) root@62f163f9dc04:/# mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) root@62f163f9dc04:/# mysql -u root -p Enter password: //登錄成功信息 我只復制了一段。 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 8.0.17 MySQL Community Server - GPL mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '10584940w!'; Query OK, 0 rows affected (0.02 sec) //添加遠程登錄用戶 mysql> CREATE USER 'lingqingxue'@'%' IDENTIFIED WITH mysql_native_password BY '10584940w!'; Query OK, 0 rows affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON *.* TO 'LINGQINGXUE'@'%'; '打錯啦 ERROR 1410 (42000): You are not allowed to create a user with GRANT mysql> GRANT ALL PRIVILEGES ON *.* TO 'lingqingxue'@'%'; Query OK, 0 rows affected (0.01 sec) mysql>
用終端管理SQL太費勁了,於是我查找到了一個SQL管理圖形程序。
sudo pacman -S mysql-workbench
圖形運行如圖:
配置Nginx
//nginx配置 //創建文件夾 mkdir -p /home/inkhin/docker/nginx/www /home/inkhin/docker/nginx/logs /home/inkhin/docker/nginx/conf/nginx.conf /* 查詢容器ID ➜ ~ sudo docker ps [sudo] password for inkhin: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 62f163f9dc04 mysql "docker-entrypoint.s…" About an hour ago Up About an hour 0.0.0.0:3306->3306/tcp, 33060/tcp mysql e1baa3443dc1 nginx "nginx -g 'daemon of…" About an hour ago Up About an hour 0.0.0.0:80->80/tcp inkhin-test a7334d2b3902 daocloud.io/library/centos:7.1.1503 "/bin/bash" 3 hours ago Restarting (0) 7 seconds ago dao_test-centos7_1_1 e402dbbee8a4 daocloud.io/library/php:7.3.3 "docker-php-entrypoi…" 3 hours ago Restarting (0) 7 seconds ago dao_test-php_1 615397b10d6c daocloud.io/daocloud/daomonit "/usr/local/bin/daom…" 3 hours ago Up 3 hours daomonit ➜ ~ */ // 拷貝Nginx配置 這里的cp 后的容器ID 要自己復制 docker cp 6dd4380ba708:/etc/nginx/nginx.conf /home/inkhin/docker/nginx/conf/ // 運行容器 docker run -d -p 80:80 --name inkhin-test -v /home/inkhin/docker/nginx/www:/usr/share/nginx/html -v /home/inkhin/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/inkhin/docker/nginx/logs:/var/log/nginx nginx
在 nginx/www/下 新建一個 index網頁文檔,通過127.0.0.1或者localhost就能訪問網頁了。