Loading

Docker安装Mysql、Jmeter、Jenkins、Redis、gitlab

安装Mysql

查看可用的 MySQL 版本

访问 MySQL 镜像库地址:https://hub.docker.com/_/mysql?tab=tags

可以通过 Sort by 查看其他版本的 MySQL,默认是最新版本 mysql:latest 。

拉取 MySQL 镜像

这里我们拉取官方的最新版本的镜像:

docker pull mysql:8.0.18

查看本地镜像

使用以下命令来查看是否已安装了 mysql:

docker images

运行容器

安装完成后,我们可以使用以下命令来运行 mysql 容器:

docker run -itd --name=mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

参数说明:

  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。

查看容器运行状态

docker ps

进入mysql容器

docker -h localhost -u root -p

登录mysql

mysql -h localhost -u root -p

授权root用户在其他机器上运行

grant all on *.* to 'root'@'%';

如果是mysql8版本,不支持动态修改密码验证,需要更新root用户密码

alter user 'root'@'%' identified with mysql_native_password by '123456';

刷新权限

flush privileges;

安装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


posted @ 2020-12-29 21:51  Binzichen  阅读(925)  评论(0编辑  收藏  举报