使用Gitlab CI / CD配置Docker?

时间:2019-02-22 23:54:26

标签: docker gitlab gitlab-ci

我在Gitlab CI / CD中使用Docker在此guide之后在Docker上为站点提供了简单的项目设置。但是,每当推送事件上有新作业运行时,我都会收到“容器已在使用中...”错误。如何将新代码“推”到我已经运行的网站上,而又不删除它或杀死容器?

# .gitlab-ci.yml    

stages:
 - build

job 1:
  stage: build
  tags:
    - windows-test

  script:
    - docker build -t vuejs-cookbook/dockerize-vuejs-app .
    - docker run -p 8080:80 --rm --name dockerize-vuejs-app-1 vuejs-cookbook/dockerize-vuejs-app

1 个答案:

答案 0 :(得分:1)

每次容器名称都相同。首先停止并取出旧容器。

docker stop dockerize-vuejs-app-1之后运行docker rm dockerize-vuejs-app-1docker build

此外,我建议将您的容器与-ddocs)分开运行(--restart always)。

docker build -t vuejs-cookbook/dockerize-vuejs-app .
docker stop dockerize-vuejs-app-1
docker rm dockerize-vuejs-app-1
docker run -p 8080:80 -d --restart always --name dockerize-vuejs-app-1 vuejs-cookbook/dockerize-vuejs-app