docker中使用jenkins容器自动化部署html

由于个人资金问题,服务器只有一台

服务器配置:centos7 + docker

第一步

1.修改/etc/sysconfig/docker文件,在最后增加一行DOCKER_OPTS

# docker-latest daemon can be used by starting the docker-latest unitfile.
# To use docker-latest client, uncomment below lines
#DOCKERBINARY=/usr/bin/docker-latest
#DOCKERDBINARY=/usr/bin/dockerd-latest
#DOCKER_CONTAINERD_BINARY=/usr/bin/docker-containerd-latest
#DOCKER_CONTAINERD_SHIM_BINARY=/usr/bin/docker-containerd-shim-latest
DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:5555"

2.修改/usr/lib/systemd/system/docker.service

在[Service]的ExexStart=下面增加一行$DOCKER_OPTS

[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
          --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
          --default-runtime=docker-runc \
          --exec-opt native.cgroupdriver=systemd \
          --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
          $DOCKER_OPTS \
          $OPTIONS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $ADD_REGISTRY \
          $BLOCK_REGISTRY \
          $INSECURE_REGISTRY

3. 重启

systemctl daemon-reload
systemctl restart docker.service

4.添加防火墙规则

firewall-cmd --permanent --zone=public --add-port=5555/tcp
firewall-cmd --reload

5. 用netstat查看

netstat -tnlp |grep 5555

6. 用curl进行测试

curl -v -X GET 192.168.17.131:5555/images/json |python -m json.tool

第二步

在docker中安装了jenkins容器,下载安装docker-build-step插件

打开jenkins系统设置,找到Docker Builder项

此处需要填写docker rest api

填写完成后点击test,如果出现403

那么,在系统设置中找到此项,取消勾选,允许跨域访问,然后就成功了

第三步

为了方便测试,在jenkins新建了一个maven项目,取名test-docker,并在jenkins容器的workspace目录下添加test-docker文件夹,模拟项目构建

步骤如下:

首先进入jenkins容器,然后使用cd命令到根目录

然后进入workspance目录,并创建文件夹

cd workspace
mkdir test-docker
cd test-docker
mkdir docker

创建Dockerfile文件和index.html模拟构建成功生成的文件

创建Dockerfile文件

vi Dockerfile

 内容如下

FROM nginx:alpine
COPY . /usr/share/nginx/html

创建html文件 

vi index.html

内容如下

hello docker

然后回到jenkins的test-docker项目,修改配置

在Build中,添加build step,选择Execute Docker command

相关内容如下:

1.创建docker镜像

2.继续添加build step,在创建容器前移除已有的容器

这个地方ContainerID可以直接填容器名称,不一定非要填容器ID

3.创建容器

4. 启动容器

到这里就结束了,我们使用docker ps -a查看容器情况

这里看到我们创建的hello容器已经成功运行了

各位小伙伴如果在过程中出现什么问题,欢迎留言提问

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值