Docker

Ciekawe opisy z sieci.

  1. https://docs.docker.com/engine/installation/linux/docker-ce/debian/
  2. https://sii.pl/blog/docker-wprowadzenie/
  3. https://www.youtube.com/watch?v=YFl2mCHdv24

Instalacja

$ sudo apt-get install \
     apt-transport-https \
     ca-certificates \
     curl \
     gnupg2 \
     software-properties-commoncurl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - 
$ sudo add-apt-repository \
   "deb [arch=amd64] https://download.docker.com/linux/debian \
   $(lsb_release -cs) \
   stable"
$ echo "deb [arch=armhf] https://download.docker.com/linux/debian \
     $(lsb_release -cs) stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list
apt-get update
apt-get install docker-ce

Uwaga

W systemach produkcyjnych należy zawsze używać najnowszej wersji
konkretnej wersji produktu Docker CE. To wyjście jest obcięte.
Lista dostępnych wersji:

$ apt-cache madison docker-cedocker-ce | debian-jessie | https://download.docker.com/linux/debian jessie/stable amd64 Packagesapt-get install docker-ce=

Obrazy

# https://hub.docker.com/_/postgres/
# https://hub.docker.com/_/drupal/# start a postgres instance
docker run --name some-postgres -e POSTGRES_PASSWORD=TyB50KdfAdmin. -d postgres# start a postgres instance
docker run --name some-drupal --link some-postgres:postgres -d drupal# Logowanie jako psql (po odpalenu kontenera)
#docker run -it --rm --link some-postgres:postgres postgres psql -h postgres -U postgres
docker pull drupal:8.0.1  - ściągniecie konkretnego obrazu
docker images             - lista obrazów
docker pull drupal        - ściągniecie obrazu
docker images             - lista obrazów
docker rmi 7997c4845e45   - usuwanie obrazu
docker stats              - lista działających kontenerów
# Start kontenera
docker start 8330b4704c1cd00d885a18b65b859e38e4aa9f29a8ad281ddfa009e7c91c7c57
docker start 09f198baf324dc675ed6e5261d137273d306371d0a4b256965b6619e4373451e docker pull drupal redmine postgres
 docker pull drupal
 docker pull redmine
 docker pull postgres
 docker run --name some-postgres -e POSTGRES_PASSWORD=TyB50KdfAdmin. -d -p 5432:5432 postgres
 docker run --name some-drupal -p 80:80 -d drupal
 netstat -tunlp
How do I assign a port mapping to an existing Docker container?
$ docker stop container01
$ docker commit container01 image01
$ docker rm container01
$ docker run -d -P --name container01 image01

procesy dockera

root@itranet:/etc/nginx/sites-available# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                            NAMES
026d27e64091        redmine             "/docker-entrypoin..."   6 days ago          Up 3 days           3000/tcp, 0.0.0.0:8082->80/tcp   some-redmine
f6a04be78ca5        drupal              "docker-php-entryp..."   6 days ago          Up 3 days           0.0.0.0:8081->80/tcp             some-drupal
0aa7cf7cbd4d        postgres            "docker-entrypoint..."   6 days ago          Up 3 days           0.0.0.0:5432->5432/tcp           some-postgresroot@itranet:/etc/nginx/sites-available# docker exec -it f6a04be78ca5 bash
root@f6a04be78ca5:/var/www/html# 
root@f6a04be78ca5:/var/www/html# 

Redmine w Dockerze

 docker run --name redmine \
  --env='DB_ADAPTER=postgresql' \
  --env='DB_HOST=i-n.autosan.pl' \
  --env='DB_NAME=redmine' \
  --env='DB_USER=redmine' \
  --env='DB_PASS=Adminpass.' \
  --volume=/srv/docker/redmine/redmine:/srv/docker/zasoby/redmine/data \
  -d -p 8082:3000  redmine 
Smietnik
root@itranet:~# history | grep  run
   42  docker run -i -t -p 80:80 ricardoamaro/drupal8
   43  docker run -i -t -p 80:80 drupal
   44  docker run -i -t -p 81:81 drupal
   46  docker run -i -t -p 81:81 drupal
   49  docker run -i -t -p 80:80 drupal
  187  docker run -it --rm --link some-postgres:postgres postgres psql -h postgres -U postgres
  193  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d postgres
  198  docker run --name some-app --link some-postgres:postgres -d application-that-uses-postgres
  200  docker run -it --rm --link some-postgres:postgres postgres psql -h postgres -U postgres
  201  docker run --name some-app --link some-postgres:postgres -d application-that-uses-postgres
  202  docker run --help
  203  docker run --name drupal --link some-postgres:postgres -d application-that-uses-postgres
  204  docker run --name some-drupal --link some-postgres:postgres -d drupal
  208  docker run
  221  docker run --name some-drupal -p 8080:80 -d drupal
  222  docker run --name some-drupal -d drupal
  223  docker run --name some-drupal --link some-postgres:postgres -d drupal
  226  docker run --name some-drupal --link some-postgres:postgres -d drupal
  227  docker run --help
  229  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d postgres
  235  docker run --name some-drupal --link some-postgres:postgres -d drupal
  237  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d postgres
  242  docker run --name some-drupal -p 80:80 -d drupal
  265  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d -p 5432:5432 postgres
  268  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d -p 5432:5432 postgres
  318  docker run --name some-postgres -e POSTGRES_PASSWORD=PiotrAdmin20YG. -d -p 5432:5432 postgres
  319  docker run --name some-drupal -p 80:80 -d drupal
  334  docker run --name some-drupal -p 8081:80 -d drupal
  336  docker run --name some-drupal -p 8081:80 -d drupal
  342  docker run --name some-redmine -p 8082:80 -d redmine
  416  docker run --name some-drupal -p 8081:80 -d drupal
  491  history | grep run
  493  docker run --name=redmine -it --rm   -p 8082:80 -d redmine
  500  docker run
  503  docker run --name=redmine -it --rm   -p 8082:80 -d redmine   --env='DB_ADAPTER=postgresql'   --env='DB_HOST=i-n.autosan.pl' --env='DB_NAME=redmine'   --env='DB_USER=redmine' --env='DB_PASS=PiotrAdmin20YG.'   --volume=/srv/docker/redmine/redmine:/srv/docker/zasoby/redmine/data   sameersbn/redmine
  505  docker run df29c37f7b5e96035ba29387f92e015ac44457c2ef26d0c92be4b05ed3af668
  508  docker run --name=redmine -it --rm   -p 8082:80 -d redmine   --env='DB_ADAPTER=postgresql'   --env='DB_HOST=i-n.autosan.pl' --env='DB_NAME=redmine'   --env='DB_USER=redmine' --env='DB_PASS=PiotrAdmin20YG.'   --volume=/srv/docker/redmine/redmine:/srv/docker/zasoby/redmine/data   sameersbn/redmine
  587  docker run