首页 > 其他分享 >Gitlab Runner自动执行Docker容器

Gitlab Runner自动执行Docker容器

时间:2024-03-01 23:56:18浏览次数:14  
标签:FULL run Runner PAY IMAGE Gitlab amihome Docker docker

概述

Gitlab完全可以执行docker run命令,本文用最简单的方式来演示。

修改.gitlab-ci.yml

加入第4个stage,运行docker run。

stages:
    - build-docker-image
    - test
    - push-image
    - run-website
variables:
    PAY_IMAGE_FULL_URL: docker.amihome.cn/amihome/change/pay:$CI_PIPELINE_ID
    # Use no compression for caches
    CACHE_COMPRESSION_LEVEL: "fastest"
build API:
    stage: build-docker-image
    script:
        - cd .
        - docker build -t $PAY_IMAGE_FULL_URL -f BlazorApp1/Dockerfile --no-cache .

推送Docker映像:
    stage: push-image
    before_script:
        - docker login -u gitlab-runner -p dkLDKduwoddj29492849fdjfjdueu29923 docker.amihome.cn
    script:
        - docker push $PAY_IMAGE_FULL_URL

启动Docker容器:
    stage: run-website
    script: 
        - docker run -d --name BlazorApp -p 58080:8080 $PAY_IMAGE_FULL_URL

签入代码

img

img

在服务器上用docker ps查看容器状态

这里有一点要说明,就是ASPNETCORE 8.0,容器里8080端口才是http。访问80端口没有内容。

root@dev-server:/mnt/disk5t/data/gitlab.amihome.cn/gitlab-runners# docker ps
CONTAINER ID   IMAGE                                                      COMMAND                  CREATED         STATUS                          PORTS                                                                                                                         NAMES
aafa31e12350   docker.amihome.cn/amihome/change/pay:16                    "dotnet BlazorApp1.d…"   4 minutes ago   Up 4 minutes                    8081/tcp, 0.0.0.0:58080->8080/tcp, :::58080->8080/tcp                                                                         BlazorApp

在浏览器中打开网站

img

标签:FULL,run,Runner,PAY,IMAGE,Gitlab,amihome,Docker,docker
From: https://www.cnblogs.com/amisoft/p/18048185/gitlab-runner-exec-docker-run

相关文章

  • Gitlab Runner自动推送Docker映像
    接上文,增加两个stage最简单的推送,其实是在dockerbuild后边带上--push的开关即可。但是不经过测试就上传,Docker仓库里很快会堆满垃圾。所以我们设计新增两个场景,经过测试之后才push映像去仓库。stages:-build-docker-image-test-push-imagevariables:......
  • Gitlab Runner自动制作C#网站项目的Docker映像
    概述代码签入Gitlab后,GitlabRunner自动执行dockerbuild,构建网站应用的Docker映像。在VisualStudio2022中创建解决方案在Gitlab中创建项目这一步省略。签入源代码到Gitlab为项目添加Dockerfile在解决方案根目录下创建“.gitlab-ci.yml”stages:-build-docke......
  • docker更换存储路径
    方案一:创建或修改`daemon.json`文件。在Docker1.12或以上版本中,可以通过创建或修改`/etc/docker/daemon.json`文件来指定新的存储路径。例如,在文件中添加`"data-root":"/home/docker"`,然后重启Docker服务。345方案二:使用软链接。首先,停止Docker服务,移动现有的`/......
  • Docker的安装
     https://docs.docker.com/engine/install.centos/Docker安装步骤:   注意:因为docker是国外的,国内访问经常超时,所以步骤5  需要修改镜像地址,比如用阿里云:yum-config-manager--add-repohttp://mirrors.aliyun.com.docker-ce/linux/centos/docker-ce.repo ......
  • Docker平台入门
    Docker是一个Client-Server机构的系统,Docker守护进程运行在主机上,然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器。容器,是一个运行时环境,就是我们前面说到的集装箱。  Docker是一个C/S模式的架构,后端是一个松耦合架构。众多模块各司其职......
  • Docker的基本安装
    Docker分为CE社区版和EE企业版,以下安装的是CE版本,也可以直接查看官网的安装指南若安装过旧版本的Docker,可先进行卸载yumremovedocker\docker-client\docker-client-latest\docker-common\do......
  • Docker的3要素:镜像容器仓库
        Docker的3大基本组成1.镜像image2.容器container3.仓库repository 容器解释: 仓库解释:  ......
  • Docker能做什么
    Docker能做什么:Docker是解决 运行环境和配置问题的软件容器,方便做持续集成并有助于整体发布的容器虚拟化技术。 容器和虚拟机的区别比较容器发展简史虚拟机的缺点:1.资源占用多2.冗余步骤多3.启动   ......
  • GitLab Runner 添加 极狐GitLab 域名 host
    本文作者徐晓伟自定义GitLab域名解析查看极狐GitLabrunner日志查看极狐GitLabRunnerPod名称[root@anolis-7-9~]#kubectl-ngitlab-testgetpod|grepgitlab-runnermy-gitlab-gitlab-runner-6fb4bf7468-nmnkp0/1Running29(62sago)......
  • 记一次dockerfile无法构建问题追溯
    我有一个dockerfile如下: ENTRYPOINT["/sbin/tini","-g","--"]CMD/home/scrapy/start.sh我原本的用意是先启动tini,再执行下面的cmd命令启动start.sh。为啥要用tini?因为我的这个docker容器运行了Selenium,以前没用tini的时候Selenium运行结束后会有很多僵尸进程没有退出,遂......