91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Docker的常規使用方法是什么

發布時間:2021-12-14 10:26:15 來源:億速云 閱讀:123 作者:iii 欄目:云計算

本篇內容介紹了“Docker的常規使用方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

7. 進階

本節我們以運行Gitlab實例為例,進一步介紹Docker的常規使用。

root@ubuntu:~# docker pull redis   7.1. 獲取Redis鏡像并運行

...  
root@ubuntu:~# docker run --name gitlab-cache -d redis   
a2c183f16cee0aa30eca8f27875d3770ac1291fc22b218d4b5e673ce604074c8

7.2. 獲取MySQL鏡像并運行

root@ubuntu:~# mkdir -p /opt/test/gitlab/db/   <1>
root@ubuntu:~# docker pull mysql...  
root@ubuntu:~# docker run --name gitlab-db -e MYSQL_ROOT_PASSWORD=123456 -d -p 3307:3306 -v /opt/test/gitlab/db:/var/lib/mysql mysql:5.7   
7c8110b8151e2ddbc67d2bb1d96a9cc24ef68546a885d065e78bd274775ec7f7
<1>創建數據庫目錄映射

7.3. 創建相應的數據庫及權限

root@ubuntu:~# docker exec -it gitlab-db /bin/bash
root@7c8110b8151e:/# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.9 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> CREATE USER 'gitlab'@'%.%.%.%' IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
Query OK, 1 row affected (0.00 sec)

mysql> GRANT ALL PRIVILEGES ON `gitlabhq_production`.* TO 'gitlab'@'%.%.%.%';
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye
root@7c8110b8151e:/# exit
exit

exec 表示進入一個運行中的容器

MySQL中執行的語句見: https://hub.docker.com/r/sameersbn/gitlab/#external-mysql-server

7.4. 獲取Gitlab鏡像

root@ubuntu:~# mkdir -p /opt/test/gitlab/data  <1> 
root@ubuntu:~# docker pull sameersbn/gitlab
<1>創建GIT數據目錄映射

7.5. 運行Gitlab鏡像

root@ubuntu:~# docker run --name=gitlab -d \
 -e GITLAB_PORT=10080 \ <1>
 -e GITLAB_SSH_PORT=10022 \ <2>
 -e GITLAB_HOST=inner.ecfront.com \ <3>
 -e DB_TYPE=mysql \ <4>
 -e DB_HOST=192.168.4.99 \
 -e DB_PORT=3307 \
 -e DB_NAME=gitlabhq_production \
 -e DB_USER=gitlab \
 -e DB_PASS=password \
 -e GITLAB_EMAIL=git@ecfront.com \ <5>
 -e SMTP_ENABLED=true \
 -e SMTP_DOMAIN=ecfront.com \
 -e SMTP_HOST=smtp.exmail.qq.com \
 -e SMTP_PORT=25 \
 -e SMTP_USER=git@ecfront.com \
 -e SMTP_PASS=xxx \
 -e SMTP_AUTHENTICATION=login \
 -e NGINX_MAX_UPLOAD_SIZE=512m \ <6>
 -e GITLAB_BACKUPS=monthly \ <7>
 -p 10022:22 \ <8>
 -p 10080:80 \ <9>
 -v /opt/test/gitlab/data:/home/git/data \ <10> 
 --link gitlab-cache:redisio \ <11>
 --dns=192.168.4.99 \ <12>
 sameersbn/gitlab

<1> HTTP服務端口
<2> SSH請求端口
<3> 服務域名
<4> 數據庫連接信息
<5> Email信息
<6> 解決`RPC failed; result=22, HTTP code = 413`問題,見 http://stackoverflow.com/questions/7489813/github-push-error-rpc-failed-result-22-http-code-413
<7> 備份策略,每天
<8> SSH請求端口映射
<9> HTTP請求端口映射
<10> GIT數據目錄映射
<11> 連接Reids容器,實現緩存
<12> 配置DNS


如果使用MySQL數據庫一定要加上-e DB_TYPE=mysql否則這個容器會以默認的Postgre類型去連接導致無法啟動

--dns 用于指定容器的DNS,我們可以指定一個公共DNS以實現不同容器互PING

Docker默認情況下容器間是不能互訪的,要實現交互主要有兩種途徑,一是用--link這也是Docker推薦的做法,它會在容器中建立被Link容器的Host記錄實現單向訪問,另一種是開放服務實現調用,對于上述案例,Redis使用的是Link方式,MySQL使用是開放服務方式。
  • 訪問一下:http://192.168.4.99:10080 (192.168.4.99是我宿主機的IP),等等,為什么訪問不了?

7.6. 查看運行日志

  • 在出問題時我們首先想到的是 去看看日志 ,Docker容器運行日志的查看如下:

root@ubuntu:~# docker logs gitlab  
   ERROR:   Please configure the GITLAB_SECRETS_DB_KEY_BASE parameter. 
   Cannot continue. Aborting...

提示是需要GITLAB_SECRETS_DB_KEY_BASE變量,查看官方說明:

Note: Since GitLab 8.0.0 you need to provide the GITLAB_SECRETS_DB_KEY_BASE parameter while starting the image.

Tip: You can generate a random string using pwgen -Bsv1 64 and assign it as the value ofGITLAB_SECRETS_DB_KEY_BASE.

— https://hub.docker.com/r/sameersbn/gitlab/

  • 好的,我們用pwgen -Bsv1 64生成一個密鑰

root@ubuntu:~# pwgen -Bsv1 64  
7hpTqCXgf4tVbnFmdC7PNn9n4hWmCnvF479fsJtcdTkhmVfWfzpwTJ4sNRzNkkXf
  • GITLAB_SECRETS_DB_KEY_BASE加上重新運行

root@ubuntu:~# docker rm -f gitlab
root@ubuntu:~# docker run --name=gitlab -d \
 -e GITLAB_PORT=10080 \
 -e GITLAB_SSH_PORT=10022 \
 -e GITLAB_HOST=inner.ecfront.com \
 -e DB_TYPE=mysql \
 -e DB_HOST=192.168.4.99 \
 -e DB_PORT=3307 \
 -e DB_NAME=gitlabhq_production \
 -e DB_USER=gitlab \
 -e DB_PASS=password \
 -e GITLAB_SECRETS_DB_KEY_BASE=7hpTqCXgf4tVbnFmdC7PNn9n4hWmCnvF479fsJtcdTkhmVfWfzpwTJ4sNRzNkkXf \
 -e GITLAB_EMAIL=git@ecfront.com \
 -e SMTP_ENABLED=true \
 -e SMTP_DOMAIN=ecfront.com \
 -e SMTP_HOST=smtp.exmail.qq.com \
 -e SMTP_PORT=25 \
 -e SMTP_USER=git@ecfront.com \
 -e SMTP_PASS=xxx \
 -e SMTP_AUTHENTICATION=login \
 -e NGINX_MAX_UPLOAD_SIZE=512m \
 -e GITLAB_BACKUPS=monthly \
 -p 10022:22 \
 -p 10080:80 \
 -v /opt/test/gitlab/data:/home/git/data \
 --link gitlab-cache:redisio \
 --dns=192.168.4.99 \
 sameersbn/gitlab

7.7. 完成

  • 好了,第一次要做的事情比較多,過一會就可以打開頁面了

Docker的常規使用方法是什么


用戶名:root 密碼:5iveL!fe

“Docker的常規使用方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安化县| 湖南省| 吉木乃县| 砚山县| 莫力| 遵义市| 罗定市| 浙江省| 庆云县| 博野县| 南华县| 桦川县| 宁南县| 临江市| 射洪县| 富川| 泰宁县| 玛多县| 凤城市| 子洲县| 喀喇沁旗| 衡南县| 信宜市| 阜新| 时尚| 定西市| 区。| 丹棱县| 衡东县| 竹溪县| 屏南县| 犍为县| 长丰县| 那曲县| 威信县| 凯里市| 察隅县| 阳信县| 和林格尔县| 方城县| 陵水|