使用 Docker 部署 Jenkins 并設置初始管理員密碼

使用 Docker 部署 Jenkins 并設置初始管理員密碼

在這里插入圖片描述

每一次開始,我都特別的認真與膽怯,是因為我期待結局,也能夠不會那么粗糙,不會讓我失望,所以,就多了些思考,多了些拘束,所以,我也就格外重視第一次!

在這篇博客中,我們將介紹如何使用 Docker 部署 Jenkins,并在 /usr/local/src/ 目錄下創建相關卷。

安裝Docker

1、選擇要安裝的平臺

Docker要求CentOS系統的內核版本高于3.10

uname -r #通過 uname -r 命令查看你當前的內核版本

安裝文檔地址

https://docs.docker.com/engine/install/centos/

2、選擇要安裝的操作系統

img

3、首先卸載已安裝的Docker

使用Root權限登錄 Centos。確保yum包更新到最新。

sudo yum update

如果你的操作系統沒有安裝過Docker , 就不需要執行卸載命令。

 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

4、建立倉庫

安裝Docker所需要的一些工具包

sudo yum install -y yum-utils

建立Docker倉庫 (映射倉庫地址)

sudo yum-config-manager   --add-repo     https://download.docker.com/linux/centos/docker-ce.repo

5、安裝Docker引擎

 sudo yum install docker-ce docker-ce-cli containerd.io

6、啟動Docker

sudo systemctl start docker

7.設置docker鏡像倉庫

有時候,我們pull鏡像的時候非常慢,所以需要設置一下國內的鏡像倉庫作為下載源

第一步:新建或編輯daemon.json
vi /etc/docker/daemon.json第二步:daemon.json中編輯如下
{"registry-mirrors": ["http://hub-mirror.c.163.com"]
}第三步:重啟docker
systemctl restart docker.service第四步:執行docker info查看是否修改成功
docker info

以下列舉出國內的幾個下載地址:

1.網易
http://hub-mirror.c.163.com
2.Docker中國區官方鏡像
https://registry.docker-cn.com
3.中國科技大學
https://docker.mirrors.ustc.edu.cn
4.阿里云容器服務
https://cr.console.aliyun.com/
首頁點擊“創建我的容器鏡像”  得到一個專屬的鏡像加速地址,類似于“https://1234abcd.mirror.aliyuncs.com”

8.安裝docker-compose

Linux 上我們可以從 Github 上下載它的二進制包來使用,最新發行的版本地址:https://github.com/docker/compose/releases。

運行以下命令以下載 Docker Compose 的當前穩定版本:

$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

要安裝其他版本的 Compose,請替換 v2.2.2。

Docker Compose 存放在 GitHub,不太穩定。
你可以也通過執行下面的命令,高速安裝 Docker Compose。

curl -L [https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-](https://link.zhihu.com/?target=https%3A//get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-)`uname -s`-`uname -m` > /usr/local/bin/docker-compose

將可執行權限應用于二進制文件:

$ sudo chmod +x /usr/local/bin/docker-compose

創建軟鏈:

$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

測試是否安裝成功:

$ docker-compose version
cker-compose version 1.24.1, build 4667896b

9.docker常用命令

基本命令

  1. 啟動 Docker 服務

    systemctl start docker
    
  2. 檢查 Docker 版本

    docker --version
    

鏡像操作

  1. 從 Docker Hub 拉取鏡像

    docker pull <image_name>
    

    例如:

    docker pull nginx
    
  2. 列出本地鏡像

    docker images
    
  3. 刪除本地鏡像

    docker rmi <image_name>
    
  4. 構建鏡像

    docker build -t <image_name> .
    

容器操作

  1. 運行容器

    docker run -it --name <container_name> <image_name>
    

    例如:

    docker run -it --name my_nginx nginx
    
  2. 列出運行中的容器

    docker ps
    
  3. 列出所有容器(包括停止的容器)

    docker ps -a
    
  4. 停止容器

    docker stop <container_name>
    
  5. 啟動已停止的容器

    docker start <container_name>
    
  6. 刪除容器

    docker rm <container_name>
    
  7. 進入運行中的容器

    docker exec -it <container_name> /bin/bash
    

數據卷操作

  1. 創建數據卷

    docker volume create <volume_name>
    
  2. 列出數據卷

    docker volume ls
    
  3. 刪除數據卷

    docker volume rm <volume_name>
    

網絡操作

  1. 創建網絡

    docker network create <network_name>
    
  2. 列出網絡

    docker network ls
    
  3. 刪除網絡

    docker network rm <network_name>
    

其他操作

  1. 查看容器日志

    docker logs <container_name>
    
  2. 檢查 Docker 系統資源使用情況

    docker system df
    

安裝Jenkins

1.拉取 Jenkins 鏡像

從 Docker Hub 拉取最新的 Jenkins 鏡像。

docker pull jenkins/jenkins:lts

2.創建 Docker 卷

/usr/local/src/ 目錄下創建一個用于存儲 Jenkins 數據的目錄。

mkdir -p /usr/local/src/jenkins/data

3.運行 Jenkins 容器

使用 Docker 啟動 Jenkins 容器,并掛載前面創建的目錄。

docker run -d --name jenkins \-v /usr/local/src/jenkins/data:/var/jenkins_home \-p 8080:8080 \-p 50000:50000 \jenkins/jenkins:lts

在上述命令中:

  • -d:表示容器將在后臺運行。
  • --name jenkins:指定容器的名稱為 jenkins
  • -v /usr/local/src/jenkins/data:/var/jenkins_home:將主機的 /usr/local/src/jenkins/data 目錄掛載到容器內的 Jenkins 數據目錄 /var/jenkins_home
  • -p 8080:8080:將容器的 8080 端口映射到主機的 8080 端口。
  • -p 50000:50000:將容器的 50000 端口映射到主機的 50000 端口,用于 Jenkins 代理通信。

如果啟動失敗,查看容器日志,

docker logs 容器ID

如果是如下報錯

INSTALL WARNING: User:  missing rw permissions on JENKINS_HOME: /var/jenkins_home
touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied
Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

那就給容器掛載目錄授權

sudo chown -R 1000:1000 /usr/local/src/jenkins
sudo chown -R 1000:1000 /usr/local/src/jenkins/*

3.驗證部署

打開瀏覽器并訪問 http://<你的主機IP>:8080,在首次啟動時,Jenkins 將生成一個初始管理員密碼。可以通過以下命令查看初始密碼:

docker logs 容器ID

在這里插入圖片描述

或者直接查看文件中的密碼

docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

在這里插入圖片描述

初始化配置完成后,可以使用 Jenkins Web 界面創建新的用戶、配置插件和管理 Jenkins 實例。

4.其他常用 Docker 命令

  • 查看容器日志:

    docker logs -f jenkins
    
  • 進入容器內部:

    docker exec -it jenkins /bin/bash
    

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/14652.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/14652.shtml
英文地址,請注明出處:http://en.pswp.cn/web/14652.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【HCIP學習】STP協議

一、STP協議出現背景&#xff08;Spanning Tree Protocol&#xff0c;生成樹協議&#xff09; 二層環路帶來的問題&#xff1a;廣播風暴&#xff1b; MAC地址表的震蕩&#xff1b; 二、STP定義 stp是二層網絡中用于消除環路的協議&#xff0c;通過阻斷冗余鏈路來消除&#xff…

Flutter 中的 Hero 小部件:全面指南

Flutter 中的 Hero 小部件&#xff1a;全面指南 在 Flutter 中&#xff0c;Hero 動畫是一種流行的動畫效果&#xff0c;用于在不同路由&#xff08;頁面&#xff09;之間傳遞小部件&#xff0c;從而創建平滑的共享元素過渡效果。這種動畫可以增強用戶的視覺體驗&#xff0c;使…

加速度傳感器的沖擊振動的原始特征與解算(部分)

這里是工作中測得的一組數據&#xff0c;設備有多個加速度傳感器通道&#xff0c;我們可以看到沖擊振動發生前后&#xff0c;各個振動傳感器的的反饋以及其他的細化特征&#xff1a; 1.隨機振動&#xff08;加速度傳感器視角&#xff09; 2.沖擊振動&#xff08;加速度&#x…

Android Settings系統屬性讀寫

Settings系統屬性存儲均為xml&#xff0c;分三種&#xff1a; 1.global&#xff1a;所有的偏好設置對系統的所有用戶公開&#xff0c;第三方APP有讀沒有寫的權限&#xff1b; 源碼地址&#xff1a;frameworks/base/core/java/android/provider/Settings.java 對應xml路徑&…

C++ 網絡編程

一、Reactor 網絡編程模型 reactor 是一個事件處理模型。網絡處理:因為用戶層并不知道 IO 什么時候就緒,所以將對 IO 的處理轉化為對事件的處理。網絡模型構成: 非阻塞 IO:操作 IO,如果 IO 未就緒,IO 函數會立刻返回。IO 多路復用:檢測多路 IO 是否就緒。工作流程: 注冊…

【從零開始實現stm32無刷電機FOC】【理論】【1/6 電機旋轉本質】

目錄 電機旋轉需要什么樣的力&#xff1f;怎么產生力矢量&#xff1f;怎么產生任意的線圈磁矢量&#xff1f; 電機旋轉需要什么樣的力&#xff1f; 電機切向存在受力&#xff0c;電機就會旋轉。 進一步查看電機結構&#xff0c;分為轉子和定子&#xff0c;大部分情況下&#…

Spark的概述、核心、組成、運行模式

一、Spark概述 Apache Spark 是一個快速的, 多用途的集群計算系統, 相對于 Hadoop MapReduce 將中間結果保存在磁盤中, Spark 使用了內存保存中間結果, 能在數據尚未寫入硬盤時在內存中進行運算。Spark 是一個計算框架&#xff0c;可以用來代替Hadoop中的MapReduce計算框架。 二…

FIFO-Diffusion,一個無需額外訓練即可生成長視頻的框架。通過確保每個幀引用足夠多的先前幀來生成高質量、一致的長視頻。

簡單來講&#xff0c;FIFO-Diffusion先通過一些模型如VideoCraft2、zeroscope、Opem-Sora Plan等與FIFO-Diffusion的組合生成短視頻&#xff0c;然后取結尾的幀&#xff08;也可以取多幀&#xff09;&#xff0c;再用這一幀的圖片生成另一段短視頻&#xff0c;然后拼接起來。FI…

【MySQL精通之路】存儲引擎-MySQL8.0中的差異

存儲引擎是MySQL組件&#xff0c;用于處理不同表類型的SQL操作。 InnoDB是默認的、最通用的存儲引擎&#xff0c;Oracle默認使用其創建表。&#xff08;MySQL 8.0中的CREATE TABLE語句默認創建InnoDB表。&#xff09; MySQL Server使用可插拔存儲引擎體系結構&#xff0c;使存儲…

linux命令日常使用思考

linux命令日常使用思考 復制的相關問題scp和cp的區別root192.168.5.229-r的理解 更新版本的相關問題svn info 根目錄和家目錄的區別根目錄家目錄 復制的相關問題 scp和cp的區別 安全性&#xff1a;SCP 是基于 SSH 的加密傳輸協議&#xff0c;可以保證數據在傳輸過程中的安全性…

vue期末復習選擇題1

1. 下面哪一項描述是錯誤的&#xff1f;&#xff08;B&#xff09; A.$("ul li:gt(5):not(:last)")選取ul標記里面索引值大于5且不是最后一個的li元素B.$("div").find("span")選取div元素的子元素spanC.$("div.showmore > a")選取…

Axure RP 9 for Mac/win:重新定義交互原型設計的未來

在當今數字化時代&#xff0c;交互原型設計已成為產品開發中不可或缺的一環。Axure RP 9作為一款功能強大的交互原型設計軟件&#xff0c;憑借其出色的性能和用戶友好的界面&#xff0c;贏得了廣大設計師的青睞。 Axure RP 9不僅支持Mac和Windows兩大主流操作系統&#xff0c;…

Excel實現將A列和B列的內容組合到一個新的列(例如C列)中,其中A列的每個值都與B列的所有值組合。

利用Excel中vba代碼宏實現 原始數據&#xff1a; 自動生成后數據&#xff1a; vba實現代碼&#xff1a; Sub CombineColumns()Dim ws As WorksheetDim lastRowA As Long, lastRowB As Long, i As Long, j As LongDim MyIndex As IntegerDim strCombine As String, strColA As…

主流容器工具對比以及重點推薦學習的企業級工具

常見的主流容器工具包括但不限于以下幾種&#xff1a; 1. Docker&#xff1a; Docker 是最流行的容器平臺之一&#xff0c;它允許開發者將應用及其依賴打包到一個輕量級、可移植的容器中&#xff0c;然后可以在任何支持Docker的系統上運行。 2. Kubernetes&#xff1a;Kubern…

【Python】 去除字符串中的所有空白字符

基本原理 在Python中&#xff0c;字符串&#xff08;String&#xff09;是不可變的數據類型&#xff0c;這意味著一旦創建了一個字符串&#xff0c;就不能修改它的內容。然而&#xff0c;我們可以創建一個新的字符串&#xff0c;它包含原始字符串中的字符&#xff0c;但不包含…

局域網傳文件怎么操作?輕松實現文件共享!

在現代的辦公和生活中&#xff0c;局域網傳文件已經成為一種非常常見和方便的方式&#xff0c;可以快速、安全地在局域網內進行文件傳輸。無需依賴互聯網&#xff0c;局域網傳文件可以幫助團隊成員之間共享文件、備份數據、進行協作等。本文將介紹三種常見的方法&#xff0c;幫…

MySQL——存儲過程,觸發器

BaiduComate: # 問題1&#xff1a; # 問題1&#xff1a; 幫我創建兩個表student與score表&#xff0c;要求student表有id&#xff0c;createDate&#xff0c;userName&#xff0c;phone&#xff0c;age&#xff0c;sex&#xff0c;introduce&#xff0c; 要求score表有id&…

Vue3實戰Easy云盤(四):使用空間+文件預覽+文件分享+文件下載

一、空間使用 Framework.vue中 &#xff08;1&#xff09;引入接口 const api {getUseSpace: "/getUseSpace",logout: "/logout", }; &#xff08;2&#xff09;回調 // 使用空間 const useSpaceInfo ref({ useSpace: 0, totalSpace: 1 }); const g…

達夢數據庫和Oracle對比

達夢數據庫和Oracle對比 達夢數據庫&#xff08;DM&#xff09;是中國自主研發的一款數據庫管理系統&#xff0c;在功能和應用上與 Oracle 數據庫有諸多類似&#xff0c;但也有其獨特的特點。以下是對達夢數據庫&#xff08;DM&#xff09;和 Oracle 數據庫的詳細對比&#xf…

unreal engine 5.0.3 創建游戲項目

根據虛幻官網介紹&#xff0c;虛幻引擎5可免費用于創建線性內容、定制項目和內部項目。你可以免費用它開發游戲&#xff0c;只有當你的產品營收超過100萬美元時&#xff0c;才收取5%的分成費用。所以目前國內也有許多游戲廠商在使用UE制作游戲。UE5源碼也已開源&#xff0c;有U…