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/06 10:05]
val
технология_docker [2022/09/23 07:10]
val [Создание контейнера для приложения вручную]
Line 103: Line 103:
 </​code>​ </​code>​
  
-"Забыли"​ сделать скрипт start.sh "​выполнимым"​ нажали Ctrl+D+  * Методически, ​"забыли"​ сделать скрипт start.sh "​выполнимым"​ нажали Ctrl+D
  
 <​code>​ <​code>​
Line 115: Line 115:
 </​code>​ </​code>​
  
-Ctrl+D+  * Методически,​ можно уже на этом этапе: запустить скрипт,​ отключится от контейнера без его остановки,​ выяснить назначенный контейнеру ip, проверить работу приложения (curl --noproxy '​*'​ http://​172.17.0.2/​) и если все работает,​ делать commit  
 + 
 +  * [[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/
 +  или
 +gitlab-runner@server:​~$ mkdir -p webd/webd/ && cd 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/ 
-###COPY index.html /​var/​www/ ​  #test in k8s+ 
 +### for helm releases ​test 
 +### COPY index.html /var/www/
  
 EXPOSE 80 EXPOSE 80
Line 185: Line 191:
 server# ps axw | grep inetd server# ps axw | grep inetd
 server# cat /​proc/<​PID>/​cgroup server# cat /​proc/<​PID>/​cgroup
 +</​code>​
 +  * [[Технология cgroup]]
 +<​code>​
 +server# cat /​sys/​fs/​cgroup/​system.slice/​docker-NNNNNNNNNNNNNNNNNNNNNNNNNNNNN.scope/​memory.max
  
 server# docker inspect webd01 server# docker inspect webd01
Line 191: Line 201:
  
 server# wget -qO - http://​172.17.0.2/​ server# wget -qO - http://​172.17.0.2/​
 +server$ curl http://​172.17.0.2/​
  
 server# docker port webd01 server# docker port webd01
  
 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/​
 +server$ curl http://​localhost:​8000
 +server$ curl http://​localhost:​8000/​not_exit_file
  
 host browser -> http://​server.corpX.un:​8000/​ host browser -> http://​server.corpX.un:​8000/​
Line 250: Line 265:
  
   * [[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 262: Line 278:
   webd:   webd:
     image: test/webd     image: test/webd
-#    image: server.corp13.un:​5000/​student/​webd:​1.1 
     build: webd/     build: webd/
     ports:     ports:
Line 275: Line 290:
 #    stdin_open: true #    stdin_open: true
     tty: true     tty: true
 +    ​
   sftp:   sftp:
     image: atmoz/sftp     image: atmoz/sftp
Line 299: Line 315:
  
 # docker volume rm root_vol1 # 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:​ver1.N
 +    ports:
 +      - "​80"​
 +    volumes:
 +      - /​var/​www/:/​var/​www/​
 +    deploy:
 +      mode: replicated
 +      replicas: 3
 +</​code><​code>​
 +node1,2,3# docker-compose up -d --scale webd=3
 +
 +  или
 +
 +node1,2,3# docker-compose --compatibility up -d
 +node1,2,3# docker-compose --compatibility down
 +
 +
 +node1,2,3# docker ps -q | xargs -l docker port
 </​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 318: Line 359:
 # service docker restart # service docker restart
  
-docker login http://​server.corpX.un:​5000+gitlab-runner@server:​~$ ​docker login http://​server.corpX.un:​5000 
 + 
 +# less ~/​.docker/​config.json 
 +</​code><​code>​ 
 +
 +        "​auths":​ { 
 +                "​server.corp13.un:​5000":​ { 
 +                        "​auth":​ "​c3R1ZGVudDpwYXNzd29yZA=="​ 
 +                } 
 +        } 
 +
 +</​code>​ 
 + 
 +  * [[https://​serverfault.com/​questions/​703344/​how-to-remove-an-image-tag-in-docker-without-removing-the-image-itself|How to remove an image tag in Docker without removing the image itself?]] 
 + 
 +<​code>​ 
 +gitlab-runner@server:​~$ docker tag test/webd server.corpX.un:​5000/​student/​webd 
 +gitlab-runner@server:​~$ docker tag test/webd server.corpX.un:​5000/​student/​webd:​1.1
  
-# docker tag test/​webd ​server.corpX.un:5000/​student/​webd +gitlab-runner@server:~$ docker ​images
-docker ​tag test/webd server.corpX.un:​5000/​student/​webd:​wwwdir+
  
-docker push server.corpX.un:​5000/​student/​webd +gitlab-runner@server:​~$ ​docker push server.corpX.un:​5000/​student/​webd 
-docker push server.corpX.un:​5000/​student/​webd:​wwwdir+gitlab-runner@server:​~$ ​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+node1_2_3# 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.txt · Last modified: 2024/05/30 08:05 by val