代码改变世界

天行健,君子以自强不息

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

概述

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

posted on 2024-03-01 23:43  终南山人  阅读(97)  评论(0编辑  收藏  举报