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
Next revision Both sides next revision
технология_docker [2022/07/02 20:43]
val [Создание контейнера для приложения с использованием Dockerfile]
технология_docker [2022/08/19 15:16]
val [docker-compose]
Line 116: Line 116:
  
 Ctrl+D Ctrl+D
 +
 +  * [[https://​cpab.ru/​kak-rabotajut-tegi-docker-cloudsavvy-it/​|Как работают теги Docker?]]
  
 <​code>​ <​code>​
Line 129: Line 131:
 <​code>​ <​code>​
 server# mkdir /root/webd/ && cd /root/webd/ server# mkdir /root/webd/ && cd /root/webd/
 +  или
 +node1# mkdir /​root/​webd/​webd/​ && cd /​root/​webd/​webd/​
  
 server# mv /​usr/​local/​sbin/​webd . server# mv /​usr/​local/​sbin/​webd .
Line 158: Line 162:
 COPY start.sh / COPY start.sh /
 COPY webd /​usr/​local/​sbin/​webd COPY webd /​usr/​local/​sbin/​webd
-### ADD www.tgz /var/     ​#for simple test in k8s+### ADD www.tgz /var/          #for simple ​test in k8s 
 +###COPY index.html /​var/​www/ ​  #test in k8s
  
 EXPOSE 80 EXPOSE 80
Line 181: Line 186:
  
 server# docker top webd01 server# docker top webd01
 +</​code>​ 
 +  * [[Технология cgroup]] 
 +<​code>​
 server# ps axw | grep inetd server# ps axw | grep inetd
 server# cat /​proc/<​PID>/​cgroup server# cat /​proc/<​PID>/​cgroup
Line 194: Line 201:
  
 server# docker logs webd01 server# docker logs webd01
 +
 +node1# docker logs webd01 -f
  
 server# wget -qO - http://​localhost:​8000/​ server# wget -qO - http://​localhost:​8000/​
 +
 +node1# curl http://​localhost:​8000
 +node1# curl http://​localhost:​8000/​not_exit_file
  
 host browser -> http://​server.corpX.un:​8000/​ host browser -> http://​server.corpX.un:​8000/​
Line 249: Line 261:
  
   * [[https://​habr.com/​ru/​company/​ruvds/​blog/​450312/​|Руководство по Docker Compose для начинающих]]   * [[https://​habr.com/​ru/​company/​ruvds/​blog/​450312/​|Руководство по Docker Compose для начинающих]]
 +  * [[https://​stackoverflow.com/​questions/​39663096/​docker-compose-creating-multiple-instances-for-the-same-image|docker-compose creating multiple instances for the same image]]
  
 <​code>​ <​code>​
Line 261: Line 274:
   webd:   webd:
     image: test/webd     image: test/webd
 +#    image: server.corp13.un:​5000/​student/​webd:​1.1
     build: webd/     build: webd/
     ports:     ports:
Line 273: Line 287:
 #    stdin_open: true #    stdin_open: true
     tty: true     tty: true
 +#    deploy:
 +#      mode: replicated
 +#      replicas: 3
 +    ​
   sftp:   sftp:
     image: atmoz/sftp     image: atmoz/sftp
Line 294: Line 312:
 # docker-compose down # docker-compose down
  
-# docker-compose rm    #​Возможно,​ не требуется +# docker-compose rm
-</​code>​ +
-===== Дополнительные материалы =====+
  
-==== Локальный репозиторий ====+# docker volume rm root_vol1 
 +</​code><​code>​ 
 +node2_3# cat docker-compose.yml 
 +</​code><​code>​ 
 +version: "​3"​ 
 +services: 
 +  webd: 
 +    image: server.corpX.un:​5000/​student/​webd:​1.1 
 +    ports: 
 +      - "​80"​ 
 +    volumes: 
 +      - /​var/​www/:/​var/​www/​ 
 +    deploy: 
 +      mode: replicated 
 +      replicas: 3 
 +</​code><​code>​ 
 +node2_3# docker-compose up -d --scale webd=3
  
- * [[https://​docs.docker.com/​registry/​|Docker Registry]]+  или
  
-<​code>​ +node2_3# docker-compose ​--compatibility up -
-gate# docker ​run --p 5000:​5000 ​-v /​root:/​certs ​-e REGISTRY_HTTP_TLS_CERTIFICATE=/​certs/​gate.crt ​-e REGISTRY_HTTP_TLS_KEY=/​certs/​gate.key ​--name registry registry:2+node2_3# docker-compose ​--compatibility down
  
-node1# cp ~vagrant/​gate.crt /​etc/​docker/​certs.d/​gate.corp13.un\:​5000/​ca.crt 
- 
-node1# service docker restart 
  
-node1# docker ​tag val/​webd:​latest gate.corp13.un:​5000/​webd +node2_3# docker ​ps -q | xargs -l docker port
- +
-node1# docker push gate.corp13.un:​5000/​webd +
- +
-node1# curl --insecure -X GET https://​gate.corp13.un:​5000/​v2/​_catalog +
-{"​repositories":​["​webd"​]}+
 </​code>​ </​code>​
  
-==== GitLab ​репозиторий ====+===== Локальные ​репозитории ===== 
 + 
 +==== Insecure Private Registry ​====
  
   * [[Инструмент GitLab#​GitLab Docker Registry]]   * [[Инструмент GitLab#​GitLab Docker Registry]]
 +  * [[https://​docs.docker.com/​registry/​insecure/​|Test an insecure registry/​Deploy a plain HTTP registry]]
  
 <​code>​ <​code>​
Line 334: Line 361:
 # docker login http://​server.corpX.un:​5000 # docker login http://​server.corpX.un:​5000
  
-# docker tag test/webd server.corpX.un:​5000/​student/​webd +# less ~/​.docker/​config.json 
-# docker tag test/webd server.corpX.un:​5000/​student/​webd:​wwwdir+</​code><​code>​ 
 +
 +        "​auths":​ { 
 +                "​server.corp13.un:​5000":​ { 
 +                        "​auth":​ "​c3R1ZGVudDpwYXNzd29yZA=="​ 
 +                } 
 +        } 
 +
 +</​code><​code>​ 
 +node1# docker tag test/webd server.corpX.un:​5000/​student/​webd 
 +node1# docker tag test/webd server.corpX.un:​5000/​student/​webd:​1.1
  
-# docker push server.corpX.un:​5000/​student/​webd +node1# docker push server.corpX.un:​5000/​student/​webd 
-# docker push server.corpX.un:​5000/​student/​webd:​wwwdir+node1# docker push server.corpX.un:​5000/​student/​webd:​1.1
 ... ...
-# docker run --name webd01 --hostname webd01 -itd -p 8000:80 server.corp13.un:​5000/​student/​webd:​wwwdir+node2# docker run --name webd01 --hostname webd01 -itd --rm -p 8000:80 server.corpX.un:​5000/​student/​webd:​1.1 
 +</​code>​ 
 + 
 +==== Использование образа Docker Registry ==== 
 + 
 +  * [[https://​docs.docker.com/​registry/​|Docker Registry]] 
 + 
 +<​code>​ 
 +gate# docker run -d -p 5000:5000 -v /​root:/​certs -e REGISTRY_HTTP_TLS_CERTIFICATE=/​certs/​gate.crt -e REGISTRY_HTTP_TLS_KEY=/​certs/​gate.key --name registry registry:​2 
 + 
 +node1# cp ~vagrant/​gate.crt /​etc/​docker/​certs.d/​gate.corp13.un\:​5000/​ca.crt 
 + 
 +node1# service docker restart 
 + 
 +node1# docker tag val/​webd:​latest gate.corp13.un:​5000/​webd 
 + 
 +node1# docker push gate.corp13.un:​5000/​webd 
 + 
 +node1# curl --insecure -X GET https://​gate.corp13.un:​5000/​v2/​_catalog 
 +{"​repositories":​["​webd"​]}
 </​code>​ </​code>​
  
технология_docker.txt · Last modified: 2024/03/07 09:50 by val