云网牛站
所在位置:首页 > Linux云服务器 > 采用Systemd在Docker容器中运行Jenkins服务器的方法

采用Systemd在Docker容器中运行Jenkins服务器的方法

2019-01-26 11:40:15作者:吴可稿源:云网牛站

本文通过Systemd init系统管理的Docker容器中运行Jenkins服务器,请按以下步骤操作。

 

一、安装Docker参考文章

首先在Linux操作系统中安装Docker引擎,请参考下面文章:

在Ubuntu 18.04.1服务器上安装docker的步骤,附基本配置说明

在Ubuntu 18.04系统中安装指定docker版本的简单方法

在Fedora 29/Fedora 28系统上安装Docker的步骤

安装完成后,可以通过运行docker version命令确认安装的版本:

采用Systemd在Docker容器中运行Jenkins服务器的方法

 

二、添加jenkins用户

接下来是将Jenkins系统用户添加到你的服务器中,该用户将管理Jenkins服务:

sudo groupadd --system jenkins

sudo useradd -s /sbin/nologin --system -g jenkins jenkins

sudo usermod -aG docker jenkins

确保将此用户添加到docker组:

# id jenkins

uid=999(jenkins) gid=998(jenkins) groups=998(jenkins),999(docker)

Pull Jenkins的LTS docker镜像版本:

$ sudo docker pull jenkins/jenkins:lts

运行docker images命令确认下载成功:

采用Systemd在Docker容器中运行Jenkins服务器的方法

 

三、创建Jenkins数据目录和容器

我们需要Jenkins数据的持久存储,以确保数据保持完整,因此可以在容器关闭或崩溃时重复使用。

sudo mkdir /var/jenkins

sudo chown -R 1000:1000 /var/jenkins

 

四、创建Jenkins Container Systemd服务

为Jenkins创建一个新的systemd服务单元文件:

sudo vim /etc/systemd/system/jenkins-docker.service

加上以下内容:

[Unit]

Description=Jenkins Server

Documentation=https://jenkins.io/doc/

After=docker.service

Requires=docker.service

[Service]

Type=simple

User=jenkins

Group=jenkins

TimeoutStartSec=0

Restart=on-failure

RestartSec=30s

ExecStartPre=-/usr/bin/docker kill jenkins-server

ExecStartPre=-/usr/bin/docker rm jenkins-server

ExecStartPre=/usr/bin/docker pull jenkins/jenkins:lts

ExecStart=/usr/bin/docker run \

          --name jenkins-server \

          --publish 8080:8080 \

          --publish 50000:50000 \

          --volume /var/jenkins:/var/jenkins_home \

          jenkins/jenkins:lts

SyslogIdentifier=jenkins

ExecStop=/usr/bin/docker stop jenkins-server

[Install]

WantedBy=multi-user.target

重新加载systemd并启动jenkins服务:

sudo systemctl daemon-reload

sudo systemctl start jenkins-docker

最后运行sudo systemctl status jenkins-docker命令查看状态:

采用Systemd在Docker容器中运行Jenkins服务器的方法

 

五、配置Jenkins参考

请按照在Ubuntu 18.04系统中安装Jenkins的方法提到的配置Jenkins说明来操作,配置完成后才能使用到Jenkins管理控制台,实现图形化管理Jenkins。

 

相关主题

讲解Docker化Python Django应用程序的步骤

精选文章
热门文章