This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
технология_docker [2025/01/23 13:49] val [Создание образа для приложения с использованием Dockerfile] |
технология_docker [2025/05/05 07:39] (current) val [docker-compose] |
||
---|---|---|---|
Line 59: | Line 59: | ||
# docker info | # docker info | ||
+ | </code> | ||
+ | ==== Запуск контейнеров ==== | ||
+ | * [[https://stackoverflow.com/questions/41694329/docker-run-override-entrypoint-with-shell-script-which-accepts-arguments|Docker run override entrypoint with shell script which accepts arguments]] | ||
+ | * Запуск сервиса TACACS+ в [[Сервис TACACS+#Docker]] | ||
+ | |||
+ | <code> | ||
# docker run hello-world | # docker run hello-world | ||
Line 79: | Line 85: | ||
* [[Сервис Grafana]] | * [[Сервис Grafana]] | ||
==== Обзор и удаление ==== | ==== Обзор и удаление ==== | ||
+ | |||
+ | * [[https://forums.docker.com/t/why-arent-base-layer-images-listed-in-docker-image-ls-a/139044/5|Why aren’t base layer images listed in `docker image ls -a`?]] | ||
<code> | <code> | ||
Line 247: | Line 255: | ||
<code> | <code> | ||
- | :~/pywebd$ ### mkdir -p etc/pywebd/; cp -rv /etc/pywebd/ etc/pywebd/ | + | :~/pywebd$ ### mkdir etc/; cp -rv /etc/pywebd/ etc/ |
:~/pywebd$ ### echo '<h1>Hello from pywebd</h1>' > index.html | :~/pywebd$ ### echo '<h1>Hello from pywebd</h1>' > index.html | ||
Line 274: | Line 282: | ||
#COPY --chown=myuser:myuser app.py . | #COPY --chown=myuser:myuser app.py . | ||
- | #COPY --chown=myuser:myuser etc/pywebd/ /etc/ | + | ### COPY --chown=myuser:myuser etc/pywebd/ /etc/pywebd/ |
- | #COPY --chown=myuser:myuser index.html /var/www/ | + | ### COPY --chown=myuser:myuser index.html /var/www/ |
### ADD www.tgz /var/ | ### ADD www.tgz /var/ | ||
### ENV PYWEBD_PORT=4080 | ### ENV PYWEBD_PORT=4080 | ||
- | #EXPOSE 4080 | + | ### EXPOSE 4080 |
ENTRYPOINT ["python"] | ENTRYPOINT ["python"] | ||
Line 287: | Line 295: | ||
:~/pywebd$ time docker build -t pywebd . | :~/pywebd$ time docker build -t pywebd . | ||
+ | :~/pywebd$ ### docker run -ti --rm --entrypoint /bin/sh pywebd | ||
:~/pywebd$ ### docker run -p 4443 -d --rm pywebd | :~/pywebd$ ### docker run -p 4443 -d --rm pywebd | ||
Line 317: | Line 326: | ||
#FROM alpine | #FROM alpine | ||
#COPY --from=builder /gowebd /gowebd | #COPY --from=builder /gowebd /gowebd | ||
+ | |||
+ | EXPOSE 80 | ||
ENTRYPOINT ["/gowebd"] | ENTRYPOINT ["/gowebd"] | ||
Line 469: | Line 480: | ||
# docker run --name sftp01 -v /var/www:/home/user3/www -p 2222:22 -d --rm atmoz/sftp user3:password3:10003 | # docker run --name sftp01 -v /var/www:/home/user3/www -p 2222:22 -d --rm atmoz/sftp user3:password3:10003 | ||
- | # docker exec -it sftp01 bash | + | # ###docker exec -it sftp01 bash |
</code> | </code> | ||
Ctrl+D | Ctrl+D | ||
Line 544: | Line 555: | ||
# docker-compose rm | # docker-compose rm | ||
+ | |||
+ | # docker volume inspect root_vol1 | ||
# docker volume rm root_vol1 | # docker volume rm root_vol1 | ||
Line 664: | Line 677: | ||
<code> | <code> | ||
~/gowebd# time docker run \ | ~/gowebd# time docker run \ | ||
- | -v $(pwd):/workspace --rm\ | + | -v $(pwd):/workspace \ |
+ | -v ~/.docker/config.json:/kaniko/.docker/config.json \ | ||
gcr.io/kaniko-project/executor:latest \ | gcr.io/kaniko-project/executor:latest \ | ||
- | --skip-tls-verify --log-timestamp\ | + | --skip-tls-verify --log-timestamp \ |
--dockerfile=./Dockerfile \ | --dockerfile=./Dockerfile \ | ||
--context=/workspace \ | --context=/workspace \ | ||
- | --destination=server.corp13.un:5000/student/gowebd \ | + | --destination=server.corpX.un:5000/student/gowebd |
- | --cache=true --cache-copy-layers --cache-repo server.corp13.un:5000/dev-cache --use-new-run \ | + | |
- | --verbosity debug | + | |
</code><code> | </code><code> | ||
или, интерактивно: | или, интерактивно: | ||
Line 677: | Line 689: | ||
root@ubuntu:~/gowebd# docker run -it \ | root@ubuntu:~/gowebd# docker run -it \ | ||
-v $(pwd):/workspace --rm --entrypoint "/bin/sh" \ | -v $(pwd):/workspace --rm --entrypoint "/bin/sh" \ | ||
+ | -v ~/.docker/config.json:/kaniko/.docker/config.json \ | ||
gcr.io/kaniko-project/executor:debug | gcr.io/kaniko-project/executor:debug | ||
Line 682: | Line 695: | ||
--dockerfile=./Dockerfile \ | --dockerfile=./Dockerfile \ | ||
--context=/workspace \ | --context=/workspace \ | ||
- | --destination=server.corp13.un:5000/student/gowebd | + | --destination=server.corpX.un:5000/student/gowebd |
</code><code> | </code><code> | ||
тестируем результат: | тестируем результат: | ||
</code><code> | </code><code> | ||
# docker run --pull=always --name gowebd -itd --rm \ | # docker run --pull=always --name gowebd -itd --rm \ | ||
- | -p 8000:80 server.corp13.un:5000/student/gowebd | + | -p 8000:80 server.corpX.un:5000/student/gowebd |
</code> | </code> | ||
==== Приложение apwebd ==== | ==== Приложение apwebd ==== |