本文主要給大家介紹如何使用 docker 搭建常用的服務(wù)環(huán)境,
包括mysql,reedis,nginx,jenkins 等常用的環(huán)境,下面直接進(jìn)入主題。
1、MySQL 部署
①搜索 MySQL 鏡像
docker search mysql
②拉取 MySQL 鏡像
docker?pull?mysql:5.7
③創(chuàng)建容器,設(shè)置端口映射,目錄映射
●在宿主機(jī)中創(chuàng)建一個(gè) MySQL 目錄,用來(lái)存儲(chǔ)數(shù)據(jù)庫(kù)信息
mkdir ~/mysql
cd mysql:5.7
?●啟動(dòng)容器
docker run -id \
-p 3306:3306 \
--name db \
-v /mysql/conf:/etc/mysql/conf.d \
-v /mysql/logs:/logs \
-v /mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7
○ -p 3307:3306 :宿主機(jī)的 3307 端口映射到容器的 3306 端口
○ --name c_mysql: 指定容器名稱
○ -v /mysql/conf:/etc/mysql/conf.d : 掛載 MySQL 配置文件的路徑到容器
○ -v /mysql/logs:/logs :將 MySQL 日志文件的路徑掛載到容器
○ -v /mysql/data:/var/lib/mysql:將主機(jī) MySQL 的數(shù)據(jù)文件目錄掛載到容器
如果你想學(xué)習(xí)接口自動(dòng)化測(cè)試,我這邊給你推薦一套視頻,這個(gè)視頻可以說(shuō)是B站播放全網(wǎng)第一的接口自動(dòng)化測(cè)試教程,同時(shí)在線人數(shù)到達(dá)1000人,并且還有筆記可以領(lǐng)取及各路大神技術(shù)交流:798478386????
【已更新】B站講的最詳細(xì)的Python接口自動(dòng)化測(cè)試實(shí)戰(zhàn)教程全集(實(shí)戰(zhàn)最新版)_嗶哩嗶哩_bilibili【已更新】B站講的最詳細(xì)的Python接口自動(dòng)化測(cè)試實(shí)戰(zhàn)教程全集(實(shí)戰(zhàn)最新版)共計(jì)200條視頻,包括:1.【接口自動(dòng)化】目前軟件測(cè)試的市場(chǎng)行情以及測(cè)試人員能力標(biāo)準(zhǔn)。、2.【接口自動(dòng)化】全面熟練Requests庫(kù)以及底層方法調(diào)用邏輯、3.【接口自動(dòng)化】接口自動(dòng)化實(shí)戰(zhàn)及正則和JsonPath提取器的應(yīng)用等,UP主更多精彩視頻,請(qǐng)關(guān)注UP賬號(hào)。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a
④數(shù)據(jù)庫(kù)操作
●進(jìn)入容器操作數(shù)據(jù)庫(kù)
# 進(jìn)入容器
docker exec -it c_mysql /bin/bash
# 進(jìn)入mysql
mysql -uroot -p123456
# 創(chuàng)建一個(gè)遠(yuǎn)程連接賬號(hào)
> use mysql
> grant all privileges on * to 'test'@'%' identified by 'mysql';
# 刷新權(quán)限
> flush privileges
●客戶端遠(yuǎn)程連接數(shù)據(jù)庫(kù)
# 數(shù)據(jù)庫(kù)host為:宿主機(jī)的IP
# 數(shù)據(jù)庫(kù)端口為:3306
#?數(shù)據(jù)庫(kù)賬號(hào)密碼:自己上面設(shè)置的賬號(hào)密碼
2、nginx 部署
①搜索鏡像
docker search nginx
?②拉取鏡像
docker?pull?nginx
③創(chuàng)建容器,映射端口
●本地創(chuàng)建 nginx 數(shù)據(jù)存儲(chǔ)文件
# 創(chuàng)建nginx目錄
mkdir /nginx
cd /nginx
mkdir conf
cd conf
# 編輯nginx配置文件
vi nginx.conf
●nginx 配置文件內(nèi)容
user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;
events {
worker_connections 768;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
gzip on;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
●運(yùn)行容器?
docker run -id \
--name nginx-test \
-p 8000:80 \
-v /nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /nginx/logs:/var/log/nginx \
nginx
●驗(yàn)證是否安裝成功
通過(guò)訪問(wèn)?http://ip:8000,驗(yàn)證是否可以訪問(wèn) nginx 服務(wù)。
3、Redis 部署
①搜索鏡像
docker search redis
②拉取鏡像
docker?pull?redis
③運(yùn)行容器
docker?run?-id?--name?redis-test?-p?6379:6379?redis
●設(shè)置密碼
docker?run?-id?--name?redis-test?-p?6379:6379?redis?--requirepass?123456
到此為止 Redis 就安裝成功啦。
4、jenkins 部署
①下載 jenkins 鏡像
docker?pull?jenkins/jenkins?
②啟動(dòng)容器,并映射出端口和掛在目錄
docker?run?--name?jenkins?-d?-v?jenkins_home:/var/jenkins_home?-p?8080:8080?-p?50000:50000?jenkins/jenkins:lts-jdk11
③進(jìn)入容器獲取 jenkins 的密碼
# 進(jìn)入容器
docker exec -it jenkins /bin/bash
# 容器內(nèi)執(zhí)行,獲取jenkins初始密碼
cat?/var/jenkins_home/secrets/initialAdminPassword?
④訪問(wèn) jenkins 服務(wù)?http://ip:8080,輸入上面設(shè)置的密碼,然后按頁(yè)面提示流程進(jìn)行初始化操作,設(shè)置賬號(hào)密碼,選擇安裝插件,即可進(jìn)入到 jenkins 的主頁(yè)面啦。
5、私有倉(cāng)庫(kù)的搭建
如果你想搭建一個(gè)自己的私有 Docker 倉(cāng)庫(kù),也很簡(jiǎn)單,只需要幾個(gè)步驟即可實(shí)現(xiàn),
①搭建倉(cāng)庫(kù)
Docker 官方提供了一個(gè)搭建私有倉(cāng)庫(kù)的鏡像 registry ,只需把鏡像下載下來(lái),運(yùn)行容器并暴露 5000 端口,就可以使用了。
docker?pull?registry:2
docker?run?-d?-v?/opt/registry:/var/lib/registry?-p?5000:5000?--name?myregistry?registry:2
Registry 服務(wù)默認(rèn)會(huì)將上傳的鏡像保存在容器的/var/lib/registry,我們將主機(jī)的/opt/registry 目錄掛載到該目錄,即可實(shí)現(xiàn)將鏡像保存到主機(jī)的/opt/registry 目錄了。
②推送鏡像到私有倉(cāng)庫(kù)
要通過(guò) docker tag 將該鏡像標(biāo)志為要推送到私有倉(cāng)庫(kù):
docker?tag?nginx:latest?localhost:5000/nginx:latest
通過(guò) docker push 命令將 nginx 鏡像 push 到私有倉(cāng)庫(kù)中:
docker?push?localhost:5000/nginx:latest
③拉取私有倉(cāng)庫(kù)的鏡像文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-596350.html
拉取私有倉(cāng)庫(kù)的鏡像,使用如下命令:???????文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-596350.html
docker pull localhost:5000/鏡像名:版本號(hào)
例如
docker?pull?localhost:5000/nginx:latest
到了這里,關(guān)于不外傳秘訣| docker 快速搭建常用的服務(wù)環(huán)境的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!