Я пытаюсь настроить конвейер bitbucket для моего проекта React.Для этого я создал файл docker-compose и Dockerfile.
Вот мой файл конвейера:
branches:
develop:
- step:
name: Dockerize
script:
- docker login $DOCKER_REGISTRY -u $DOCKER_REGISTRY_LOGIN -p $DOCKER_REGISTRY_PWD
- docker build -f context/Dockerfile -t $DOCKER_IMAGE_NAME --build-arg BASE_API_URL=$API_DEV_URL .
- docker tag $DOCKER_IMAGE_NAME $DOCKER_REGISTRY/$DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT
- docker push $DOCKER_REGISTRY/$DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT
services:
- docker
caches:
- docker
- step:
name: Deploy to dev
deployment: dev
script:
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER rm -Rf $DOCKER_COMPOSE_DEV_PATH/*
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER mkdir $DOCKER_COMPOSE_DEV_PATH/log
- scp -P $SERVER_PORT docker-compose.yml $SERVER_USER@$SERVER:$DOCKER_COMPOSE_DEV_PATH/
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER docker pull $DOCKER_REGISTRY/$DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER docker tag $DOCKER_REGISTRY/$DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT $DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER docker rmi $DOCKER_REGISTRY/$DOCKER_IMAGE_NAME:$BITBUCKET_COMMIT
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER TAG=$BITBUCKET_COMMIT docker-compose -p container-name -f $DOCKER_COMPOSE_DEV_PATH/docker-compose.yml down
- ssh -p $SERVER_PORT $SERVER_USER@$SERVER TAG=$BITBUCKET_COMMIT docker-compose -p container-name -f $DOCKER_COMPOSE_DEV_PATH/docker-compose.yml up -d
options:
docker: true
Вот мой файл docker-compose
version: '3'
services:
image_name:
image: repo/image_name:${TAG}
build:
context: .
dockerfile: context/Dockerfile
args:
- BASE_API_URL=${BASE_API_URL}
volumes:
- ./log:/var/log/nginx/
Мое дерево файлов выглядит следующим образом
-app
|_ bitbucket-pipeline.yml
|_ docker-compose.yml
|_ context
|_ Dockerfile
Из того, что я прочитал, я не вижу проблемы с моим файлом docker-compose.Мой контекст и ссылка на Dockerfile должны работать.Но я получаю ошибку Cannot locate specified Dockerfile: context/Dockerfile
на последнем шаге моего конвейера (т. Е. При выполнении команды docker-compose up)
Я не знаю, что мне следует изменить, чтобы она заработала.