在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于阿里云Docker和Jenkins構(gòu)建自動化部署

馬哥Linux運(yùn)維 ? 來源:稀土掘金技術(shù)社區(qū) ? 2023-12-11 15:29 ? 次閱讀

在這里先亮一下所涉及的環(huán)境設(shè)備 阿里云服務(wù)器:

CPU&內(nèi)存:2核(vCPU)2 GiB

操作系統(tǒng):CentOS 8.5 64位

第一步安裝docker

79535318-9763-11ee-8b88-92fbcf53809c.jpg

安裝命令:


curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

當(dāng)出現(xiàn)如下命令:

79667628-9763-11ee-8b88-92fbcf53809c.jpg

說明已經(jīng)安裝成功了

第二步安裝docker-compose

這一步比較折騰, 按照網(wǎng)上的方法,使用如下命令, 即可完成下載


curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

但卻得到如下結(jié)果:

79779fa2-9763-11ee-8b88-92fbcf53809c.jpg

下載失敗,并且提示:Permission denied

7989b6e2-9763-11ee-8b88-92fbcf53809c.jpg

無權(quán)限問題

有效的方法就是這兩種:

799db624-9763-11ee-8b88-92fbcf53809c.jpg

輸入如下命令:


 sudo usermod -aG docker $USER


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

然后結(jié)果如下:

79a97d7e-9763-11ee-8b88-92fbcf53809c.jpg

報出了一個新的問題

安裝失敗或缺失

報錯:


/usr/local/bin/docker-compose: line 1: html: No such file or directory
/usr/local/bin/docker-compose: line 2: syntax error near unexpected token `<'
'usr/local/bin/docker-compose: line 2: `503 Serv<a href="https://m.hqchip.com/app/1726" target="_blank"><u>ic</u></a>e Temporarily Unav<a href="http://www.xsypw.cn/tags/ai/" target="_blank"><u>ai</u></a>lable

解決方法:

重新安裝docker-compose,國內(nèi)的有些快捷方式有些是有問題的,可能短期內(nèi)能夠使用,時間長了就會出現(xiàn)問題
盡量直接使用GitHub的,如果一次下載不成,多執(zhí)行幾遍就可以

命令如下:


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

最終效果:安裝成功!

檢查命令:docker-compose -v

79c90130-9763-11ee-8b88-92fbcf53809c.jpg

第三步安裝Nginx和Jenkins

使用docker拉取nginx、jenkins鏡像


docker pull nginx 
docker pull jenkins/jenkins

拉取完之后,查看鏡像


docker images


79e06b40-9763-11ee-8b88-92fbcf53809c.jpg

以下這部分內(nèi)容是挪用《Docker + Jenkins + Nginx實現(xiàn)前端自動化部署》來的

創(chuàng)建docker的相關(guān)目錄,方便維護(hù)


mkdir /docker           
mkdir /docker/compose    
mkdir /docker/jenkins_home   
mkdir /docker/nginx      
mkdir /docker/nginx/conf 
mkdir /docker/html       
mkdir /docker/html/dev   
mkdir /docker/html/release  
mkdir /docker/html/pro

創(chuàng)建docker-compose.yml、nginx.conf配置文件


cd /docker/compose
touch docker-compose.yml


cd /docker/nginx/conf
touch nginx.conf

最終目錄結(jié)構(gòu)如下:


   + docker 
       + compose
           - docker-compose.yml  //docker-compose配置
       + html             //各環(huán)境代碼目錄(實際項目可能不在同一目錄)
           + dev          //dev環(huán)境代碼目錄
           + release      //release環(huán)境代碼目錄
           + pro          //pro環(huán)境代碼目錄
       + jenkins_home     //Jenkins工程目錄
       + nginx            //nginx工程目錄
           + conf
               - nginx.conf  //nginx配置

nginx.conf


user  nginx;
worker_processes  1;
 
error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;
 
 
events {
    worker_connections  1024;
}
 
 
http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;
 
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
 
    access_log  /var/log/nginx/access.log  main;
 
    sendfile        on;
    #tcp_nopush     on;
 
    keepalive_timeout  65;
 
    gzip  on;


    #dev環(huán)境
    server {
            #監(jiān)聽的端口
        listen  8001;
        server_name  localhost;
        #設(shè)置日志
#        access_log  logs/dev.access.log  main;
        
        #定位到index.html
           location / {
               #linux下HTML文件夾,就是你的前端項目文件夾
               root  /usr/share/nginx/html/dev/dist;
#               root  /home/html/dev/dist;
               #輸入網(wǎng)址(server_name:port)后,默認(rèn)的訪問頁面
               index  index.html;
               try_files $uri $uri/ /index.html;
           }
    }


    #sit環(huán)境
    server {
            #監(jiān)聽的端口
        listen  8002;
        server_name  localhost;
        #設(shè)置日志
#        access_log  logs/sit.access.log  main;
        
        #定位到index.html
           location / {
               #linux下HTML文件夾,就是你的前端項目文件夾
               root  /usr/share/nginx/html/sit/dist;
#               root  /home/html/dev/dist;
               #輸入網(wǎng)址(server_name:port)后,默認(rèn)的訪問頁面
               index  index.html;
               try_files $uri $uri/ /index.html;
           }
    }


 
#    include /etc/nginx/conf.d


   
}

重點(diǎn):進(jìn)入服務(wù)器控制臺安全組配置添加三個都端口。8080:對應(yīng)jenkins 8001:對應(yīng)dev環(huán)境 8002:對應(yīng)sit環(huán)境

docker-compose.yml


version: '3'


networks:
  frontend:
    external: true


services:                                      
  docker_jenkins:
    user: root                                 
    restart: always                            
    image: jenkins/jenkins:lts                 
    container_name: jenkins                    
    environment:
      - TZ=Asia/Shanghai
      - "JENKINS_OPTS=--prefix=/jenkins_home" 




    ports:                                     
      - 8080:8080
      - 50000:50000
      


    volumes:                                   
      - /docker/jenkins_home/:/var/jenkins_home     
      - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose
  
  docker_nginx_dev:                            
    restart: always
    image: nginx
    container_name: nginx_dev
    ports:
      - 8001:8001
    volumes:
      - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - /docker/html:/usr/share/nginx/html
      - /docker/nginx/logs:/var/log/nginx


  docker_nginx_sit:                            
    restart: always
    image: nginx
    container_name: nginx_sit
    ports:
      - 8002:8002
    volumes:
      - /docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - /docker/html:/usr/share/nginx/html
      - /docker/nginx/logs:/var/log/nginx

配置說明:

docker_jenkins是一個定義的服務(wù)名稱。user: root指定了 Jenkins 容器使用 root 權(quán)限。restart: always表示容器總是在退出時重啟。image: jenkins/jenkins:lts指定了 Jenkins 鏡像及其版本。container_name: jenkins是容器的名稱。ports定義了容器內(nèi)外端口的映射。volumes定義了主機(jī)文件系統(tǒng)路徑與容器內(nèi)路徑的掛載關(guān)系。image: nginx指定了 Nginx 鏡像。container_name: nginx_dev是容器的名稱。

docker如何移除jenkins

要從Docker中刪除Jenkins容器,可以按照以下步驟進(jìn)行操作:

首先,使用docker ps -a命令查看所有正在運(yùn)行的或已經(jīng)停止的容器。確認(rèn)Jenkins容器的ID或名稱。

然后,使用docker stop (將替換為Jenkins容器的ID)來停止該容器。

接下來,使用docker rm (同樣需要將替換為Jenkins容器的ID)來刪除該容器。

最后,還可以通過docker images命令列出本地存儲庫中的所有圖像,并使用docker rmi (將替換為Jenkins鏡像的ID)來刪除相應(yīng)的鏡像。

注意事項:

在執(zhí)行上述命令之前,請確保沒有其他重要數(shù)據(jù)依賴于這些容器或鏡像。

若要完全清理Docker系統(tǒng)中不再使用的對象,可以使用docker system prune命令。

第四步啟動環(huán)境

先啟動docker, 如果已經(jīng)設(shè)置自動啟動,可忽略


systemctl start docker

然后啟動Jenkins、Nginx,這一步要在docker-compose.yml當(dāng)前目錄下,執(zhí)行該命令,不然會報找不到

docker-compose up -d

79f67d22-9763-11ee-8b88-92fbcf53809c.jpg

查看運(yùn)行狀態(tài)


docker-compose ps -a

[root@iZ7xvdmlqb3e0e0teakf5vZ ~]# cd /docker/compose [root@iZ7xvdmlqb3e0e0teakf5vZ compose]# docker-compose ps -a

7a0ad484-9763-11ee-8b88-92fbcf53809c.jpg

然后訪問地址,即可

7a1f6bec-9763-11ee-8b88-92fbcf53809c.jpg

因為文章篇幅太大,所以Jenkins的配置和使用放到第二篇。歡迎關(guān)注

查看Docker容器的命令,可以使用docker ps -a命令。這將顯示所有正在運(yùn)行或已經(jīng)停止的容器及其相關(guān)信息,包括容器ID、鏡像名稱、創(chuàng)建時間等。

如果需要獲取特定容器的詳細(xì)信息,可以使用docker inspect 命令來查看該容器的配置和狀態(tài)。

下面是一些常用的Docker容器管理命令示例:

docker run: 創(chuàng)建并運(yùn)行新的容器。

docker start/stop/restart: 分別啟動、停止和重啟指定的容器。

docker exec: 進(jìn)入到正在運(yùn)行中的容器內(nèi)部執(zhí)行命令。

docker logs: 輸出容器的日志信息。

docker rm: 刪除不再需要的容器。

docker images: 列出本地主機(jī)上存在的鏡像。

docker pull: 從互聯(lián)網(wǎng)上拉取最新版本的鏡像。

docker push: 將自定義的鏡像推送到互聯(lián)網(wǎng)上共享。

docker build: 根據(jù) Dockerfile 構(gòu)建新的鏡像。

進(jìn)入服務(wù)器檢查docker、docker-compose版本


[root@VM-12-6-centos ~]# docker -v
Docker version 20.10.5, build 55c4c88
[root@VM-12-6-centos ~]# docker-compose -v
docker-compose version 1.28.6, build 5db8d86f

設(shè)置docker開機(jī)啟動


sudo systemctl enable docker  
sudo systemctl start docker

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10871

    瀏覽量

    211942
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9191

    瀏覽量

    85509
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6836

    瀏覽量

    123361
  • 阿里云
    +關(guān)注

    關(guān)注

    3

    文章

    957

    瀏覽量

    43072
  • Docker
    +關(guān)注

    關(guān)注

    0

    文章

    469

    瀏覽量

    11864

原文標(biāo)題:云部署:阿里云Docker+Jenkins構(gòu)建自動化部署

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    阿里ECS Docker安裝流程

    阿里ECS安裝Docker
    發(fā)表于 11-04 09:19

    如何搭建DotNet Core 21自動化構(gòu)建部署環(huán)境

    邊緣搭建DotNet Core 21 自動化構(gòu)建部署環(huán)境(上)
    發(fā)表于 04-23 14:53

    如何在持續(xù)集成開發(fā)流程中使用JenkinsDocker

    Jenkins自動化我們開發(fā)的測試流程。 在您開始之前,我們假設(shè)您對Arm上的嵌入式軟件開發(fā)有基本的了解。DockerJenkins和Arm Fast模型將在指南中進(jìn)行解釋。 對P
    發(fā)表于 08-02 10:50

    Jenkins管理的持續(xù)集成境引入Docker來優(yōu)化資源配置

    Jenkins是被廣泛應(yīng)用的持續(xù)集成、自動化測試、持續(xù)部署的框架,甚至有些項目組順便將其用來做流程管理的工具。根據(jù)任務(wù)的多寡,Jenkins通常有兩種典型的
    發(fā)表于 09-26 11:42 ?0次下載
    在<b class='flag-5'>Jenkins</b>管理的持續(xù)集成境引入<b class='flag-5'>Docker</b>來優(yōu)化資源配置

    jenkins自動化部署

    本文詳細(xì)介紹Jenkins的簡單使用—jenkins自動化部署
    的頭像 發(fā)表于 02-06 11:27 ?4698次閱讀
    <b class='flag-5'>jenkins</b><b class='flag-5'>自動化</b><b class='flag-5'>部署</b>

    平臺的自動化部署設(shè)計與實現(xiàn)

    基于簡化部署操作、節(jié)省部署時間、提高部署效率的目的,對平臺架構(gòu)和網(wǎng)絡(luò)拓?fù)溥M(jìn)行設(shè)計,對平臺自動化
    發(fā)表于 02-23 10:07 ?0次下載
    <b class='flag-5'>云</b>平臺的<b class='flag-5'>自動化</b><b class='flag-5'>部署</b>設(shè)計與實現(xiàn)

    Jenkins+docker+springboot一鍵自動部署項目

    本文章實現(xiàn)最簡單全面的Jenkins+docker+springboot 一鍵自動部署項目,步驟齊全,少走坑路。
    的頭像 發(fā)表于 09-14 09:30 ?1605次閱讀

    Jenkins+Docker一鍵自動化部署SpringBoot最簡流程

    簡述實現(xiàn)步驟:在docker安裝jenkins,配置jenkins基本信息,利用Dockerfile和shell腳本實現(xiàn)項目自動拉取打包并運(yùn)行。
    的頭像 發(fā)表于 11-23 10:16 ?1389次閱讀

    Jenkins+Docker一鍵自動化部署SpringBoot項目

    本文章實現(xiàn)最簡單全面的Jenkins+docker+springboot 一鍵自動部署項目,步驟齊全,少走坑路。
    的頭像 發(fā)表于 12-14 10:04 ?925次閱讀

    Jenkins+Docker實現(xiàn)一鍵自動化部署項目!

    本文章實現(xiàn)最簡單全面的Jenkins+docker+springboot 一鍵自動部署項目,步驟齊全,少走坑路。
    的頭像 發(fā)表于 01-06 15:36 ?1270次閱讀

    關(guān)于Jenkins+docker+springboot一鍵自動部署項目

    本文章實現(xiàn)最簡單全面的Jenkins+docker+springboot 一鍵自動部署項目,步驟齊全,少走坑路。
    的頭像 發(fā)表于 05-16 08:59 ?855次閱讀
    關(guān)于<b class='flag-5'>Jenkins+docker</b>+springboot一鍵<b class='flag-5'>自動</b><b class='flag-5'>部署</b>項目

    Jenkins+Docker一鍵自動化部署SpringBoot應(yīng)用最精簡流程

    簡述實現(xiàn)步驟:在docker安裝jenkins,配置jenkins基本信息,利用Dockerfile和shell腳本實現(xiàn)項目自動拉取打包并運(yùn)行。
    的頭像 發(fā)表于 11-06 16:27 ?2339次閱讀
    <b class='flag-5'>Jenkins+Docker</b>一鍵<b class='flag-5'>自動化</b><b class='flag-5'>部署</b>SpringBoot應(yīng)用最精簡流程

    基于Jenkins+GitLab+Maven實現(xiàn)代碼自動打包編譯發(fā)布

    Jenkins是一個獨(dú)立開源的持續(xù)集成和持續(xù)交付工具,用于自動化構(gòu)建、測試和部署軟件項目。
    的頭像 發(fā)表于 11-20 09:57 ?4970次閱讀
    基于<b class='flag-5'>Jenkins</b>+GitLab+Maven實現(xiàn)代碼<b class='flag-5'>自動</b>打包編譯發(fā)布

    Flexus X 實例 Docker+Jenkins+gitee 實現(xiàn) CICD 自動化部署 - 解放你的雙手~

    前言 828 B2B 企業(yè)節(jié)特惠來襲,F(xiàn)lexus X 實例引領(lǐng)自動化部署新紀(jì)元!Docker 攜手 Jenkins 與 Gitee,共創(chuàng) CICD 無限可能!在快速迭代的數(shù)字時代,我
    的頭像 發(fā)表于 12-26 18:19 ?172次閱讀
    Flexus X 實例 <b class='flag-5'>Docker+Jenkins</b>+gitee 實現(xiàn) CICD <b class='flag-5'>自動化</b><b class='flag-5'>部署</b> - 解放你的雙手~

    服務(wù)器Flexus X實例,Docker集成搭建Jenkins CI/CD平臺

    Jenkins 是一個開源的自動化服務(wù)器,用于持續(xù)集成(CI)和持續(xù)交付(CD)軟件項目。它允許開發(fā)人員在軟件開發(fā)過程中自動化各種任務(wù),如構(gòu)建、測試和
    的頭像 發(fā)表于 12-29 15:43 ?117次閱讀
    <b class='flag-5'>云</b>服務(wù)器Flexus X實例,<b class='flag-5'>Docker</b>集成搭建<b class='flag-5'>Jenkins</b> CI/CD平臺
    主站蜘蛛池模板: 欧美成人免费观看bbb| 黄色天天影视| 亚洲黄色影片| 一区二区三区伦理| 下农村女人一级毛片| 五月天丁香婷婷网| 色综合一区| 欧美性一区二区三区| 91久久澡人人爽人人添| 国产亚洲欧美一区| 亚洲综合色网| 天堂视频在线免费观看| 日韩艹| 七月色婷婷| 黄视频福利| 有没有免费的视频在线观看 | 看5xxaaa免费毛片| 亚洲免费资源| 在线天堂中文字幕| 四虎国产精品免费入口| 欧美黄色片在线观看| 国外免费一级| 天天做天天爱夜夜爽女人爽宅| 久久天天躁狠狠躁夜夜躁| 欧美极品一区| 147西西人体大胆免费网| 黄在线观看网站| 好紧好湿好黄的视频| 五月婷婷之婷婷| 欧美高清性色生活| www.你懂的| 成人免费看毛片| 国产精品黄网站免费进入| 亚洲夜夜爱| 99国产精品农村一级毛片| 天天爽夜爽免费精品视频| 波多野结衣三个女人蕾丝边| 性配久久久| 亚洲第一区第二区| 免费看的一级毛片| 久精品视频村上里沙|