Docker: различия между версиями

Материал из Home Wiki
Перейти к навигации Перейти к поиску
 
(не показано 5 промежуточных версий этого же участника)
Строка 73: Строка 73:
</syntaxhighlight>
</syntaxhighlight>


 
= Запуск кластера с применением docker swarm =
= Запуск кластера Kafka с применение docker swarm =
# ставим docker ce 18.03
# ставим docker ce 18.03
# ставим docker-machine (надо ли?)
# ставим docker-machine (надо ли?)
Строка 81: Строка 80:
# docker stack deploy kafka --compose-file kafka1.yml
# docker stack deploy kafka --compose-file kafka1.yml
# docker service scale kafka_zookeeper=2 kafka_kafka=2
# docker service scale kafka_zookeeper=2 kafka_kafka=2
Тут не получилось связать все в единый кластер. Каждый за себя.
= docker login =
<syntaxhighlight lang="bash">
docker login s3-testing.myregistry.com:4567
</syntaxhighlight>
= docker run =
docker run --rm -i c6c42753f80d /bin/sh
= Default timezone =
docker run --rm -e TZ=Europe/Amsterdam -i c6c42753f80d /bin/sh


[[Категория:Работа]]
[[Категория:Работа]]
[[Категория:Linux]]
[[Категория:Linux]]

Текущая версия на 09:35, 17 июня 2019

Категория:Работа

Настройка для пользователя

http://askubuntu.com/questions/477551/how-can-i-use-docker-without-sudo/477554#477554

Add the docker group if it doesn't already exist:

sudo groupadd docker

Add the connected user "${USER}" to the docker group. Change the user name to match your preferred user:

sudo gpasswd -a ${USER} docker

Restart the Docker daemon:

sudo service docker restart

If you are on Ubuntu 14.04-15.10* use docker.io instead:

sudo service docker.io restart

Информация о запущенном контейнере

docker inspect 38ffba0fc7d0

Выводит полные настройки, в том числе IP-адрес контейнера.

Запуск шелла внутри докера

docker exec -ti 38ffba0fc7d0 /bin/sh

Удаление не нужных образов

docker rmi $(docker images | grep "<none>" | awk "{print \$3}")

https://lebkowski.name/docker-volumes/

docker ps --filter status=dead --filter status=exited -aq | xargs docker rm -v
docker volume ls -qf dangling=true | xargs -r docker volume rm

Добавление файла в образ и работа с ним

Добавляем необходимый сертификат в образ openjdk:8-jre-alpine чтобы java могла без ошибок соединяться по TLS с учетом не корректной настройки удаленного сервера:

ADD certificate.der /root/certificate.der

RUN keytool -importcert -alias local-certificate-CA \
    -keystore /etc/ssl/certs/java/cacerts -storepass changeit \
    -file /root/certificate.der && \
    rm /root/certificate.der

Файл должен быть расположен в директории с Dockerfile.

Официальные образы

https://hub.docker.com/_/redmine/

Удаление цветного оформления из логов

https://makandracards.com/makandra/1695-removing-ansi-color-codes-from-rails-logs

docker logs ID | sed -r "s/\x1B\[([0-9]{1,3}((;[0-9]{1,3})*)?)?[m|K]//g" > result.colorless.log

Запуск кластера с применением docker swarm

  1. ставим docker ce 18.03
  2. ставим docker-machine (надо ли?)
  3. docker swarm init --advertise-addr 192.168.0.X
  4. подключем на другой машине docker swarm worker: docker swarm join --token SWMTKN-1-XXX-YYY 192.168.0.X:2377
  5. docker stack deploy kafka --compose-file kafka1.yml
  6. docker service scale kafka_zookeeper=2 kafka_kafka=2

Тут не получилось связать все в единый кластер. Каждый за себя.

docker login

docker login s3-testing.myregistry.com:4567

docker run

docker run --rm -i c6c42753f80d /bin/sh

Default timezone

docker run --rm -e TZ=Europe/Amsterdam -i c6c42753f80d /bin/sh