manjaro Docker環境配置記


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就能訪問網頁了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM