安裝Jmeter
下載jmeter
https://mirrors.tuna.tsinghua.edu.cn/apache/jmeter/binaries/
wget https://mirrors.tuna.tsinghua.edu.cn/apache/jmeter/binaries/apache-jmeter-5.4.tgz
創建Dockerfile
vi Dockerfile
編輯
FROM java:8 ENV http_proxy "" ENV https_proxy "" RUN mkdir /jmeterdocker RUN mkdir -p /jmeterdocker/test RUN mkdir -p /jmeterdocker/test/input/jmx RUN mkdir -p /jmeterdocker/test/input/testdata RUN mkdir -p /jmeterdocker/test/report/html RUN mkdir -p /jmeterdocker/test/report/jtl RUN mkdir -p /jmeterdocker/test/report/outputdata RUN cd /jmeterdocker ENV JMETER_VERSION=5.4 ENV JMETER_HOME=/jmeterdocker/apache-jmeter-${JMETER_VERSION} ENV JMETER_PATH=${JMETER_HOME}/bin:${PATH} ENV PATH=${JMETER_HOME}/bin:${PATH} COPY apache-jmeter-${JMETER_VERSION}.tgz /jmeterdocker RUN cd /jmeterdocker \ && tar xvf apache-jmeter-5.4.tgz \ && rm apache-jmeter-5.4.tgz
運行Dockerfile
docker build -t jmeter_test:v1 .
創建並運行容器
docker run --name="[REPOSITORY]" --net="host" -v /tmp/jmeterspace/test/input/jmx:/jmeterdocker/test/input/jmx \ -v /tmp/jmeterspace/test/input/testdata:/jmeterdocker/test/input/testdata \ -v /tmp/jmeterspace/test/report/html:/jmeterdocker/test/report/html \ -v /tmp/jmeterspace/test/report/jtl:/jmeterdocker/test/report/jtl \ -v /tmp/jmeterspace/test/report/outputputdata:/jmeterdocker/test/report/outputdata \ -it -d [IMAGE ID]
運行容器
docker start [CONTAINER ID]
進入容器
docker exec -it [CONTAINER ID] /bin/bash
參考學習文檔:https://www.jianshu.com/p/69f1aa64a92b
安裝Jenkins
拉取鏡像
我這里安裝的版本是2.222.3-centos
,可以去這里獲取你需要的版本: https://hub.docker.com/_/jenkins?tab=tags
docker pull jenkins/jenkins:2.222.3-centos
創建本地數據券
我這里映射本地數據卷的路徑為/data/jenkins_home/
,你想放別的地方可以自行修改
mkdir -p /data/jenkins_home/
需要修改下目錄權限,因為當映射本地數據卷時,/data/jenkins_home/
目錄的擁有者為root
用戶,而容器中jenkins
用戶的 uid 為 1000
。
chown -R 1000:1000 /data/jenkins_home/
創建容器
docker run -d --name jenkins -p 8040:8080 -p 50000:50000 -v /data/jenkins_home:/var/jenkins_home jenkins/jenkins:2.222.3-centos
-d
標識是讓 docker 容器在后台運行--name
定義一個容器的名字,如果沒有指定,那么會自動生成一個隨機數字符串當做UUID-p 8040:8080
端口映射,我本地的8080
被占用了,所以隨便映射了一個8040
-p 50000:50000
端口映射-v /data/jenkins_home:/var/jenkins_home
綁定一個數據卷,/data/jenkins_home
是剛才創建的本地數據卷
報錯:
[root@localhost /]# docker run -it ubuntu /bin/bash
WARNING: IPv4 forwarding is disabled. Networking will not work.
解決方式:
第一步:在宿主機上執行echo "net.ipv4.ip_forward=1" >>/usr/lib/sysctl.d/00-system.conf
echo "net.ipv4.ip_forward=1" >>/usr/lib/sysctl.d/00-system.conf
第二步:重啟network和docker服務
[root@localhost /]# systemctl restart network && systemctl restart docker
systemctl restart network && systemctl restart docker
第三步:驗證是否成功
docker start jenkins
配置Jenkins
打開Jenkins
通過瀏覽器訪問 http://本地IP:8040/
(注意替換成你自己的IP和端口)進入初始頁,如果 Jenkins 還沒有啟動完成,會顯示如下內容
這里要求輸入初始的管理員密碼,根據提示密碼在/var/jenkins_home/secrets/initialAdminPassword
這個文件中,注意這個路徑是 Docker 容器中的,所以我們通過如下命令獲取一下
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword
切換成中文
安裝插件:
系統管理 / 插件管理,打開“可選插件”,選擇locale 插件,點擊“下載待重啟后安裝“按鈕安裝。
勾選“安裝完成后重啟Jenkins“
系統管理
Manage Jenkins / Configure System找到Locale
輸入Default Language為zh_CN
(注意:不是zh-CN
)
勾選“Ignore browser preference and force this language to all users“
Save
如果以上沒用
變成中文成功!
安裝Redis
查看可用的 Redis 版本
訪問 Redis 鏡像庫地址: https://hub.docker.com/_/redis?tab=tags
docker pull redis # 或者 docker pull redis:rc-alpine3.12
查看redis鏡像
docker images
運行容器
docker run -itd --name redis-test -p 6379:6379 redis
參數說明:
- -p 6379:6379:映射容器服務的 6379 端口到宿主機的 6379 端口。外部可以直接通過宿主機ip:6379 訪問到 Redis 的服務。
安裝成功
docker ps
安裝Gitlab
搜索gitlab鏡像
docker search gitlab
創建gitlab容器
前置操作
由於是docker 鏡像運行,所以我們需要把gitlab 容器的配置、數據、日子存到容器外面,將目錄掛載到主機上先准備三個目錄:
#切到srv目錄 cd /srv #創建gitlab文件夾 mkdir gitlab cd gitlab mkdir config logs data
創建容器
docker run -d -p 443:443 -p 9001:80 -p 8022:22 \ --name gitlab \ --restart always \ --privileged=true \ -v /srv/gitlab/config:/etc/gitlab \ -v /srv/gitlab/logs:/var/log/gitlab \ -v /srv/gitlab/data:/var/opt/gitlab \ -v /etc/localtime:/etc/localtime:ro \ gitlab/gitlab-ce
訪問gitlab網站
http://ip:9001