User Tools

Site Tools


технология_docker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
технология_docker [2022/06/08 11:48]
val [docker-compose]
технология_docker [2022/07/15 12:19] (current)
val [Репозиторий]
Line 100: Line 100:
 /​etc/​init.d/​inetutils-inetd start /​etc/​init.d/​inetutils-inetd start
  
-/bin/bash+bash
 </​code>​ </​code>​
  
Line 135: Line 135:
  
 server# cat start.sh server# cat start.sh
-...см. выше...+</​code><​code>​ 
 +#!/bin/sh
  
 +/​etc/​init.d/​inetutils-inetd start
 +
 +touch /​var/​log/​webd.log
 +#chown 10003 /var/www/
 +  ​
 +if [ "​$MYMODE"​ = '​TEST'​ ]; then
 +  bash      # not work in k8s
 +else
 +  tail -f /​var/​log/​webd.log
 +fi
 +</​code><​code>​
 server# cat Dockerfile server# cat Dockerfile
 </​code><​code>​ </​code><​code>​
Line 146: Line 158:
 COPY start.sh / COPY start.sh /
 COPY webd /​usr/​local/​sbin/​webd COPY webd /​usr/​local/​sbin/​webd
-### ADD www.tgz /var/+### ADD www.tgz /var/          #for simple test in k8s 
 +###COPY index.html /​var/​www/ ​  #test in k8s 
 + 
 +EXPOSE 80 
 +#ENV MYMODE=TEST
  
 ENTRYPOINT ["/​start.sh"​] ENTRYPOINT ["/​start.sh"​]
Line 157: Line 173:
 ==== Запуск в режиме демона и подключение к контейнеру ==== ==== Запуск в режиме демона и подключение к контейнеру ====
 <​code>​ <​code>​
-1-й раз+1-й раз ​- запуск образа сделанного "​вручную"​
  
 server# docker run --name webd01 --hostname webd01 -itd -v /​var/​www/:/​var/​www/​ -p 8000:80 test/webd /start.sh server# docker run --name webd01 --hostname webd01 -itd -v /​var/​www/:/​var/​www/​ -p 8000:80 test/webd /start.sh
  
-2-й раз задан entrypoint ​(можно добавить ключ --rm для удаления контейнера после остановки)+2-й раз ​- через Dockerfile ​задан entrypoint и expose, ​ключ --rm для удаления контейнера после остановки
  
-server# docker run --name webd01 --hostname webd01 ​-itd -v /​var/​www/:/​var/​www/ ​-p 8000:​80 ​test/webd+server# docker run --name webd01 -e MYMODE=TEST ​-itd --rm -P test/webd
  
 server# docker top webd01 server# docker top webd01
Line 177: Line 193:
  
 server# docker port webd01 server# docker port webd01
 +
 +server# docker logs webd01
  
 server# wget -qO - http://​localhost:​8000/​ server# wget -qO - http://​localhost:​8000/​
Line 244: Line 262:
   webd:   webd:
     image: test/webd     image: test/webd
 +#    image: server.corp13.un:​5000/​student/​webd:​1.1
     build: webd/     build: webd/
     ports:     ports:
       - "​8000:​80"​       - "​8000:​80"​
 +#      - "​80"​
     volumes:     volumes:
       - /​var/​www/:/​var/​www/​       - /​var/​www/:/​var/​www/​
 +#      - vol1:/​var/​www/​
 +
 +#    environment:​
 +#      - MYMODE=TEST
 +#    stdin_open: true
     tty: true     tty: true
   sftp:   sftp:
Line 256: Line 281:
     volumes:     volumes:
       - /​var/​www/:/​home/​user3/​www       - /​var/​www/:/​home/​user3/​www
 +#      - vol1:/​home/​user3/​www
     command: user3:​password3:​10003     command: user3:​password3:​10003
 +#volumes:
 +#  vol1:
 </​code><​code>​ </​code><​code>​
 # docker-compose build # docker-compose build
Line 268: Line 296:
 # docker-compose down # docker-compose down
  
-# docker-compose rm    #Возможно, не требуется+# docker-compose rm 
 + 
 +docker volume rm root_vol1 
 +</​code>​ 
 + 
 +===== Локальные репозитории ===== 
 + 
 +==== Insecure Private Registry ==== 
 + 
 +  * [[Инструмент GitLab#​GitLab Docker Registry]] 
 +  * [[https://​docs.docker.com/​registry/​insecure/​|Test an insecure registry/​Deploy a plain HTTP registry]] 
 + 
 +<​code>​ 
 +# cat /​etc/​docker/​daemon.json 
 +</​code><​code>​ 
 +... 
 +
 +  "​insecure-registries"​ : ["​server.corpX.un:​5000"​] 
 +
 +... 
 +</​code><​code>​ 
 +# service docker restart 
 + 
 +# docker login http://​server.corpX.un:​5000 
 + 
 +# less ~/​.docker/​config.json 
 +</​code><​code>​ 
 +
 +        "​auths":​ { 
 +                "​server.corp13.un:​5000":​ { 
 +                        "​auth":​ "​c3R1ZGVudDpwYXNzd29yZA=="​ 
 +                } 
 +        } 
 +
 +</​code><​code>​ 
 +# docker tag test/webd server.corpX.un:​5000/​student/​webd 
 +# docker tag test/webd server.corpX.un:​5000/​student/​webd:​wwwdir 
 + 
 +# docker push server.corpX.un:​5000/​student/​webd 
 +# docker push server.corpX.un:​5000/​student/​webd:​wwwdir 
 +... 
 +# docker run --name webd01 --hostname webd01 -itd --rm -p 8000:80 server.corpX.un:​5000/​student/​webd
 </​code>​ </​code>​
-===== Дополнительные материалы ===== 
  
-==== Локальный репозиторий ====+==== Использование образа Docker Registry ​====
  
- * [[https://​docs.docker.com/​registry/​|Docker Registry]]+  ​* [[https://​docs.docker.com/​registry/​|Docker Registry]]
  
 <​code>​ <​code>​
технология_docker.1654678121.txt.gz · Last modified: 2022/06/08 11:48 by val