docker

docker Пример докеризации проекта SimpleMVC-example

В данной статье рассмотрим вариант добавления проекта SimpleMVC-example в docker-контейнер.
В сборке применены следующие технологии: PHP-FPM, Nginx, MySQL.
Папка docker расположена в корневой директории проекта и имеет следующую структуру:

swagger-ui docker compose Пример конфигурации

В блоке services:

swagger-ui:
  container_name: ktu-auth_swagger-ui
  ports:
    - 19736:8080
  image: swaggerapi/swagger-ui
  volumes:
    - ../docs/autogen:/schema
  environment:
    SWAGGER_JSON: /schema/openapi.yaml

-- здемь берем описание схемы из папки /docs, лежащей в поддиректории, родительской директории, содержающей директорию с docker-compose.yml

composer & docker: Установка пакета из закрытого репозитория (private git repository)

Суть вопроса

Нужен способ сделать следующее:

  • Установить внутри контейнера (по сценарию в Dockerfile) пакет, который ходится в приватном репозитории (на гитхабе или битбакете)

Т.е. перед этим у вас уже должен быть:

makefile Как последовательно выполнить команды ?

В Makefile заданы команды:

create: ${mess1:mess2} mess3
mess1:
	@echo "Команда 1 выполнена"
mess2:
	@echo "Команда 2 выполнена"
mess3:
	@echo "Команда 3 выполнена"

Когда запускаю команду из консоли

make create mess1

получаю сообщение

Команда 3 выполнена
Команда 1 выполнена

Ожидается, что команда mess3 всегда должна выводить сообщение после выполнения предыдущей команды. Например, при выполнении из консоли

make create mess1

должно быть

docker compose run echo Пустая переменная окружения из Dockerfile ENV - на выводится значение

Проблема

Как получить через docker compse run распечатку значаения переменной окружения установленной при сборки образа контейнера через env, например:

FROM node:18.17-alpine
WORKDIR /install
COPY package.json ./
COPY package-lock.json ./
RUN npm ci
ENV NODE_PATH=/install/node_modules
WORKDIR /var/www
COPY ../ .
CMD npm start

NODE_PATH - установили при сборке и теперь хотим получить значение при запуске контейнера

docker compose volumes Один путь только для контейнера, без двоеточия и пути на хостовой машине

Предположим, что в docker-compose у нас синтаксис вроде:

volumes:
  - ./host/path:/container/path
  - /worker/node_modules

-- во втором случае (без двоеточия) указан т.н. анонимный том (см. anonymous volumes)

sh: react-scripts: not found

Pages

Subscribe to RSS - docker