Я регулярно работаю над образами Docker и мне приходится играть с разными настройками. Таким образом, я периодически оказываюсь в крысиных бегах «строить, бегать, убирать, что-то менять, перестраивать, бегать…».
dockerw — небольшой инструмент для работы с образами и контейнерами Docker. И он направлен на то, чтобы помочь вам (и мне ;-)) создавать и (локально) запускать образы Docker, скрывая при этом всю боль в командной строке.
Примечание: dockerw предназначается только для «последних» помеченных изображений (не влияет / не затрагивает неявные помеченные изображения)!
использование
./dockerw [ build | run | stop | clean | status | env | help ]
Цели
| команда | Описание |
|---|---|
build |
создает образ Docker |
run |
запускает контейнер Docker на переднем плане на основе изображения |
stop |
останавливает все запущенные контейнеры на основе изображения и удаляет их |
clean |
остановить, а затем удалить ВСЕ (последние) изображения / артефакты < |
status |
показывает статус, если изображение Docker |
env |
список текущих переменных среды |
help |
показать справку |
«Строить»
[…]
«бег»
«Чистый»
Установка
-
dockerwклонов из GitHub . - Создайте каталог
dockerwпередdockerwкаталогом Docker и скопируйте сценарийdockerw.shв это место. - Скопируйте / создайте скрипт с именем «
dockerw"расположенный в рабочем каталоге вашего образа Docker.
Если вы используете только значения по умолчанию: скрипт dockerw просто вызывает dockerw.sh :
|
1
2
3
|
#!/bin/bash# call dockerw.sh, passing arguments and using env variables. ../dockerw/dockerw.sh |
Вы можете переопределить среду по умолчанию следующим образом:
|
1
2
3
4
5
6
7
8
|
#!/bin/bash# envBASE_NAME="my_container_context"CONTAINER_NAME="my_container"DOCKER_RUN_ARGS="-ti -p 1883:1883 -p 8883:8883"# call dockerw.sh, passing arguments and using env variables. ../dockerw/dockerw.sh |
Условные обозначения
CONTAINER_NAME — это базовое имя родительского рабочего каталога.
Базовое имя по умолчанию ( BASE_NAME_DEFAULT ) и аргументы запуска докера по умолчанию ( DOCKER_RUN_ARGS_DEFAULT ) можно изменить в dockerw/dockerw.sh .
Имя изображения ( IMAGE_NAME ) IMAGE_NAME следующим образом: BASE_NAME_DEFAULT/CONTAINER_NAME (например, jerady/ubuntu ).
Переменные среды
имя докера изображения «$ {` BASE_NAME`} / $ {`CONTAINER_NAME`}» jerady / mosquitto
| название | Описание | По умолчанию | пример |
|---|---|---|---|
BASE_NAME |
базовое имя контейнера Docker | jerady | jerady |
CONTAINER_NAME |
имя контейнера Docker | $ (`basename ‘pwd’`) | mosquitto |
IMAGE_NAME |
название образа Docker | $ {BASE_NAME} / $ {CONTAINER_NAME} | jerady / mosquitto |
DOCKER_RUN_ARGS |
аргументы для запуска контейнера | -ti |
-ti |
DOCKER_RUN |
команда docker run для ./dockerw run |
docker run ${DOCKER_RUN_ARGS} --name ${CONTAINER_NAME} ${IMAGE_NAME} |
docker run -ti --name mosquitto jerady/mosquitto |
Я добавил два примера изображений / проектов Docker, чтобы показать, как можно реализовать пользовательский сценарий dockerw , например, этот простой сценарий для mosquitto:
|
1
2
3
4
5
6
|
#!/bin/bash# env variablesDOCKER_RUN_ARGS="-ti -p 1883:1883 -p 8883:8883". ../dockerw/dockerw.sh |
приводит к этим неявным значениям:
GitHub
проект dockerw на GitHub
| Ссылка: | dockerw — простая командная оболочка Docker для всех нас от нашего партнера по JCG Дженса Детерса из блога JavaFX Delight . |






