- 使用docker-compose安裝
docker-compose.yml:
version: '3'
services:
jenkins:
image: 'jenkins/jenkins:lts'
container_name: jenkins
restart: always
ports:
- '8080:8080'
- '50000:50000'
volumes:
- '/var/jenkins_home:/var/jenkins_home'
- 運行前需要分配權限
sudo chown -R /var/jenkins_home
如果按照上面做還是出現(xiàn)Permission denied錯誤印屁,那么可以檢查一下selinux狀態(tài)峦筒,開啟的情況下會導致一些服務安裝、使用不成功。
查看selinux狀態(tài):
[root@localhost ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 28
臨時關閉配乓,
[root@localhost ~]# setenforce 0
1
永久關閉,可以修改配置文件/etc/selinux/config,將其中SELINUX設置為disabled,如下,
[root@localhost ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
#SELINUX=enforcing
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=targeted
[root@rdo ~]# sestatus
SELinux status: disabled
- docker-compose up -d啟動jenkins,訪問Jenkins網(wǎng)址[http://[server_ip]:8080]
This may also be found at: /var/jenkins_home/secrets/initialAdminPassword在這里可以發(fā)現(xiàn)初始密碼 - jenkins容器是無法識別容器外的git,maven,jdk的
- 直接把他們的宿主機上的安裝位置掛載給容器今豆,使其能訪問
- 如果外部沒裝,jenkins自帶了git和jdk,docker exec -it 容器id /bin/bash
進入容器柔袁,echo $JAVA_HOME找到java路徑呆躲,which git 找到git路徑,jenkins 容器中一般沒有 maven 提供的,所以 jenkins 配置中我使用 install automatically