安装Docker
Docker 软件包已经包括在默认的 CentOS-Extras 软件源里。因此想要安装 docker,只需要运行下面的 yum 命令:
- 移除旧的版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
- 安装一些必要的系统工具:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- 添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- 更新 yum 缓存:
sudo yum makecache fast
- 查看可用版本的 Docker-ce:
yum list docker-ce --showduplicates | sort -r
注意:如果需要只显示table版本,可以关闭测试版本的list:
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test
- 更新yum包索引
yum makecache fast
- 安装指定版本的docker-ce:
sudo yum install -y docker-ce-17.03.2.ce-1.el7.centos
报错:如果在安装指定版本的docker时显示需要安装指定版本的docker-ce-selinux依赖包,请安装:
yum install -y https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
- 开机自启
systemctl start docker.service
systemctl enable docker.service
安装docker-compose
- 方法一(推荐)
curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
- 方法二
在安装docker-compose之前首先检查是否安装了python-pip
终端输入
[root@localhost ~] pip -v
- 确认没有安装python-pip包则依次执行
[root@localhost ~] yum -y install epel-release
[root@localhost ~] yum -y install python-pip
[root@localhost ~] pip install --upgrade pip
[root@localhost ~] pip install docker-compose --ignore-installed requests
[root@localhost ~] docker-compose -version
- 编写docker-compose.yml
version: "3.2"
services:
# nginx
nginx:
image: nginx:1.17.8
container_name: nginx
ports:
- "80:80"
- "443:443"
volumes:
- nginxconf:/etc/nginx
- html:/usr/share/nginx/html
- nginxlogs:/var/log/nginx
- /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
networks:
- basic
# mysql
mysql:
image: mysql:5.7
container_name: mysql
ports:
- "3306:3306"
volumes:
- mysqldata:/var/lib/mysql
- mysqlconf:/etc/mysql
environment:
- MYSQL_ROOT_PASSWORD=LJ154204
networks:
- basic
# redis
redis:
image: redis:5.0.10
container_name: redis
ports:
- "6379:6379"
volumes:
- redisdata:/data
networks:
- basic
command: "redis-server --appendonly yes" #run 镜像之后用来覆盖容器内容默认命令
# portainer
portainer:
image: portainer/portainer
container_name: portainer
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
networks:
- basic
ports:
- "8000:8000"
- "9000:9000"
# jenkins
jenkins:
image: jenkins/jenkins:lts
container_name: jenkins
environment:
- TZ=Asia/Shanghai
volumes:
- jenkins_home:/var/jenkins_home
- /var/run/docker.sock:/var/run/docker.sock
networks:
- basic
ports:
- "10240:8080"
- "10241:50000"
volumes: #声明上面服务所使用的自动创建的卷名
# tomcatwebapps01: #声明指令的卷名 compose自动创建该卷名但是会在之前加入项目名
# external: #使用自定义卷名
# false #true确定使用指定卷名 注意:一旦使用外部自定义卷名启动服务之前必须手动创建
# tomcatwebapps02:
mysqldata:
mysqlconf:
redisdata:
nginxlogs:
nginxconf:
html:
portainer_data:
jenkins_home:
networks: #定义服务用到桥
basic: #定义上面的服务用到的网桥名称 默认创建就是 bridge
# external:
# true #使用外部指定网桥 注意:网桥必须存在
- 启动服务(后台启动)
docker-compose up -d
docker +jenkins 配置
- 宿主机安装maven 环境
wget http://mirrors.shu.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz
tar -zxvf apache-maven-3.5.4-bin.tar.gz
- 编辑 vim /etc/profile
因为maven是依赖于jdk所以之前已经安装了
JAVA_HOME=/usr/local/jdk1.8.0_121
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
MAVEN_HOME=/usr/local/apache-maven-3.5.4
PATH=$PATH:$MAVEN_HOME/bin:$JAVA_HOME/bin
export JAVA_HOME CLASSPATH PATH
刷新 source /etc/profile
测试 mvn -version
-
配置docker-compose 文件 将mvn 挂在到容器上image.png
进入jenkins 容器内部

image.png

image.png

image.png

image.png
- 给docker增加权限
chmod 777 /var/run/docker.sock
