docker 如何不使用 sudo 管理權限身份執行 取得連結 Facebook X Pinterest 電子郵件 其他應用程式 - 9月 25, 2023 一般來說 Docker 剛安裝完成時,會需要使用管理權限來運行 Docker,那如果不想使用 sudo 權限運行,又想直接使用 Docker 命令,以下有幾種遵循方式 1. 將使用者名稱加入至 Docker 中 sudo usermod -aG docker $USER 2. 再來切換使用者使用的群組 newgrp docker 取得連結 Facebook X Pinterest 電子郵件 其他應用程式 留言
Gitlab CI/CD 與 Docker 之間關係 - 11月 18, 2023 前言 上次交到 Runner 與 Executor 運作方式,今天要來講 Gitlab 與 Docker 之間運作,我們來了解一下,Gitlab 是怎麼幫我們這些指令,之後在自動化佈署的章節會使用到,實現更又效率的佈署。 Gitlab Runner 運作 在這裡你會看到特別的名詞,像是 gitlab-runner、docker+machine 還有 docker image ruby:3.1,那有些更特別的名詞會放在下個章節裡面,我們先來看 gitlab-runner 跟所謂的 ruby:3.1 image 這兩個是做什麼用的 Gitlab-Runner gitlab-runner 是 gitlab 用來註冊每個專案的 runner 工具,如果不知道叫 runner 可以回去看先前文章連結,每個專案可能有多個不同的 runner,比如: ssh runner、docker runner、shell runner,這些不同的 runner 我們會在下個章節提到,先講個概念。 Docker Image 我們剛才看到的 docker image ruby 3.1,代表 runner 運作的時候,有如下圖會去 docker hub 這個雲端服務,抓取 ruby 3.1 這個 image,下載下來就可以執行我們 ruby 這個程式語言指令。 自定義下載 Image 那如果我們不想使用 ruby 這個 image,我們想要抓自己要的比如 node.js 這個 image,是否有 CI/CD 命令可以改,當然是有的我們只要在我們腳本寫上 image 這個指令,就會幫我們抓 node.js 這個 image。我們先來查詢 node 版本,我們這邊先用 node:20.9.0-alpine 這個 image。 接下來我們寫好 image 腳本,然後 push 上去察看結果。 image: node:20.9.0-alpine stages: - testing test-build: stage: testing before_script: ... 閱讀更多
Docker 之建立與使用 Docker Image 清理本地 Image - 5月 11, 2024 前端 為了實驗我們上傳的 Docker Image 有沒有問題,我們先在學一個刪除本地 Docker Image,刪除 Docker Image 要使用 docker rmi <image> 這個語法,現在開始刪除本地 Docker Image 輸入以下指令 docker rmi timmmmmmm/nginx 啟用與下載 Docker Image 接下來我們再次抓回我們上傳的 Docker Image,輸入以下指令 docker pull timmmmmm/nginx 可以發現我們已經成功抓回 Docker Image 再來我們要使用這個 Docker Image 啟動容器,輸入以下指令 docker run -d -p 80:80 timmmmmmm/nginx 啟動成功之後,可以發現我們啟動容器成功 而且在瀏覽器可以看到我們 nginx 服務成功啟動 閱讀更多
Gitlab CI/CD 之 needs - 11月 10, 2023 前言 上次我們講完了 only 操作方式,接下來我們要來講解 needs 操作方式,讓我們的 CI/CD 更加仔細,更加完整。 needs 作用 needs 可以在我們整個 CI/CD 流程,去定義在哪個工作之前做完,才會去做下一個工作,假設今天有三個工作,分別叫 "test-build"、"build-docker-image"、"deploy-to-development",在 build-docker-image 工作指定 needs 在 "test-build" 工作做完時,才會去做 "build-docker-image",另外在 "deploy-to-development" 工作指定 needs 在 "build-docker-image" 做完時,才會去做 "deploy-to-development" 這項工作。 needs 定義規則 在我們的工作定義 needs,然後寫上我們定義的工作名稱,就可完成這定義。 stages: - testing - build test-build: stage: testing script: - echo '測試打包' only: - main - develop build-docker-image: stage: build needs: - test-build script: - echo '打包 docker image' only: - main - develop 練習時間 接下來我們將上次練習的 CI/CD 練習專案,加上 needs 來看會有什麼變化,以下是我們加上 needs 範例。 stages: ... 閱讀更多
留言
發佈留言