Files
.infineon/_-Review/docker.md
2024-11-06 12:39:13 -07:00

19 KiB

created, type, updated
created type updated
2024-01-06T01:25:36.179Z topic 2024-07-23T15:00:43.740Z

Docker

Windows Subsystem for Linux (wsl)

sudo -i
id
sudo -i
docker run hello-world
id
compgen -u
compgen -g
id
usermod -a -G docker mike
sudo -i
id
sudo usermod -a -G docker mike
id
exit
id
docker run hello-world
nano .bash_history
sudo -i
exit
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl -y
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo   "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" |   sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
id
exit
docker run hello-world
exit
sudo usermod -a -G docker logan-phares
newgrp docker
exit
nano .bash_history
docker version compose
docker compose version
exit
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
# dockerd-rootless-setuptool.sh install
# https://docs.docker.com/go/rootless/
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world
docker save hello-world -o hello-world-save.tar
mkdir ~/hw-s
tar -x -f hello-world-save.tar --directory ~/hw-s
rm -R ~/hw-s
docker ps -a
docker export 8007440050bd -o hello-world-export.tar
mkdir ~/hw-e
tar -x -f hello-world-export.tar --directory ~/hw-e
rm -R ~/hw-e
docker rm {name}
# https://github.com/fabiofalci/export-docker
git clone https://github.com/fabiofalci/export-docker.git
cd export-docker
sudo ./export-container.py hello-world hello-world-container
# https://docs.docker.com/build/exporters/oci-docker/
docker buildx build --output type=oci[,parameters] .
docker export 99ff1be8661a | gzip > immich_server_export.tar.gz
docker export 894b4ea7e898 | gzip > immich_redis_export.tar.gz
docker export 74eae9636bbb | gzip > immich_machine_learning_export.tar.gz
docker export 753c3f9a3f72 | gzip > immich_postgres_export.tar.gz
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
99ff1be8661a ghcr.io/immich-app/immich-server:release "tini -- /bin/bash s…" 5 minutes ago Up 5 minutes (healthy) 0.0.0.0:2283->3001/tcp, :::2283->3001/tcp immich_server
894b4ea7e898 redis:6.2-alpine "docker-entrypoint.s…" 5 minutes ago Up 5 minutes (healthy) 6379/tcp immich_redis
74eae9636bbb ghcr.io/immich-app/immich-machine-learning:release "tini -- ./start.sh" 5 minutes ago Up 5 minutes (healthy) immich_machine_learning
753c3f9a3f72 tensorchord/pgvecto-rs:pg14-v0.2.0 "docker-entrypoint.s…" 5 minutes ago Up 5 minutes (healthy) 5432/tcp immich_postgres
# https://ioflood.com/blog/docker-run-bash/#:~:text=The%20'docker%20run%20bash'%20command,tool%20for%20debugging%20and%20development.
docker run -it ubuntu bash
docker exec -it kestra-kestra-1 bash
# https://stackoverflow.com/questions/35406213/how-to-copy-data-from-docker-volume-to-host
docker cp CONTAINER:/var/logs/ /tmp/app_logs
docker cp ./some_file CONTAINER:/work
# https://forums.docker.com/t/how-to-sync-data-of-two-container-running-on-different-hosts/123815/5
docker run -ti --rm  -v moodle-data:/data -v /data/backup:/backup alpine tar czvf /backup/data.tar.gz -C /data .
# https://spacelift.io/blog/docker-volumes
docker volume ls
docker system df -v
docker volume inspect demo_volume
docker volume prune
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
systemctl show --property ActiveState docker

Export Volume

# docker container run --rm -v "kestra_kestra-data:/app/storage" -v "$(pwd):/backup" -w /app/storage debian tar czf /opt/tar/kestra/kestra_kestra-data.tar.gz .
docker volume inspect kestra_kestra-data
docker volume list
docker volume prune
docker run -v /dbdata --name dbstore ubuntu /bin/bash
docker run --rm --volumes-from dbstore -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata
docker cp /etc/nginx/sites-available/default dbstore:/dbdata
docker run --rm --volumes-from dbstore -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata1
tar -xf backup.tar
#
docker run -v /dbdata --name dbstore2 ubuntu /bin/bash
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /dbdata && tar xvf /backup/backup.tar --strip 1"

Export Container (Not Volume)

docker ps -a
mkdir ~/dbstore
docker export 85f1ac26bf47 -o ~/dbstore/dbstore.tar
mkdir ~/dbstore/dbstore
tar -x -f dbstore.tar --directory ~/dbstore/dbstore
rm -R ~/dbstore/dbstore
docker rm {name}

Config

docker config ls

Copy

docker container cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
docker cp ./some_file CONTAINER:/work
docker cp CONTAINER:/var/logs/ /tmp/app_logs
# To move an existing docker data folder, do the following:
service docker stop
# ...
cd ~/
url="http://google.com"
backup_time=$(date +'%H-%M-%S')
backup_date=$(date +'%Y-%m-%d')
echo "${backup_date}---${backup_time}.pdf"
# docker run -v "$(pwd):/workspace" pink33n/html-to-pdf --url http://google.com --pdf out.pdf
docker run -v "$(pwd):/workspace" pink33n/html-to-pdf --url "${url}" --pdf "${backup_date}---${backup_time}.pdf"
docker export 7ca928d538c1 -o /home/logan-phares/Documents/proxmox/7ca928d538c1-immich-server.tar
docker export bb6a8660ee4b -o /home/logan-phares/Documents/proxmox/bb6a8660ee4b-immich-postgres.tar
docker export 80e5cb740daa -o /home/logan-phares/Documents/proxmox/80e5cb740daa-immich-machine-learn.tar
chown logan-phares:logan-phares /home/logan-phares/Documents/proxmox/7ca928d538c1-immich-server.tar
chown logan-phares:logan-phares /home/logan-phares/Documents/proxmox/bb6a8660ee4b-immich-postgres.tar
chown logan-phares:logan-phares /home/logan-phares/Documents/proxmox/80e5cb740daa-immich-machine-learn.tar
docker run -v /dbdata --name dbstore ubuntu /bin/bash

Logan Ubuntu

# docker volume list
DRIVER    VOLUME NAME
local     1b1a8f62f416fb3dc859606458a2f25aacf31677474bf91818f9d7677b58156d
local     7825dd93049c8d0781fd0f99cd0c0b7043eaad9b5a978d251ee8764bf0dfa1ea
local     immich_model-cache
local     immich_postgres-data
local     immich_upload-data
local     kestra_kestra-data
local     kestra_postgres-data
# docker image list
REPOSITORY                                   TAG           IMAGE ID       CREATED         SIZE
kestra/kestra                                latest-full   481fda1ac930   5 days ago      1.96GB
ghcr.io/immich-app/immich-server             release       0019859e2c6b   2 weeks ago     1.95GB
ghcr.io/immich-app/immich-machine-learning   release       7703d59a8c2b   2 weeks ago     770MB
redis                                        <none>        0fc0b666ef9e   5 weeks ago     30.1MB
postgres                                     latest        74cc00b2e28f   7 weeks ago     432MB
tensorchord/pgvecto-rs                       <none>        2e2cb40c55b8   5 months ago    676MB
louislam/dockge                              1             ffb6864bc6f8   5 months ago    568MB
hello-world                                  latest        d2c94e258dcb   14 months ago   13.3kB
pink33n/html-to-pdf                          latest        dfc91456fc2b   4 years ago     401MB
# docker ps -a
CONTAINER ID   IMAGE                                                COMMAND                  CREATED        STATUS                      PORTS                                       NAMES
32cf8a43b6d0   pink33n/html-to-pdf                                  "/usr/local/bin/entr…"   24 hours ago   Exited (0) 24 hours ago                                                 xenodochial_jones
7ca928d538c1   ghcr.io/immich-app/immich-server:release             "tini -- /bin/bash s…"   25 hours ago   Up 7 hours (healthy)        0.0.0.0:2283->3001/tcp, :::2283->3001/tcp   immich_server
bb6a8660ee4b   redis:6.2-alpine                                     "docker-entrypoint.s…"   25 hours ago   Up 7 hours (healthy)        6379/tcp                                    immich_redis
c43b84f849d5   tensorchord/pgvecto-rs:pg14-v0.2.0                   "docker-entrypoint.s…"   25 hours ago   Up 7 hours (healthy)        5432/tcp                                    immich_postgres
80e5cb740daa   ghcr.io/immich-app/immich-machine-learning:release   "tini -- ./start.sh"     25 hours ago   Up 7 hours (healthy)                                                    immich_machine_learning
7003e955969c   kestra/kestra:latest-full                            "docker-entrypoint.s…"   25 hours ago   Exited (143) 24 hours ago                                               kestra-kestra-1
b5e2225d364a   postgres                                             "docker-entrypoint.s…"   25 hours ago   Exited (0) 24 hours ago                                                 kestra-postgres-1
f29f9a5ca751   louislam/dockge:1                                    "/usr/bin/dumb-init …"   25 hours ago   Up 7 hours (healthy)        0.0.0.0:5001->5001/tcp, :::5001->5001/tcp   documents-dockge-1
713f315e75c0   hello-world                                          "/hello"                 25 hours ago   Exited (0) 25 hours ago                                                 vibrant_hypatia
# docker image list
REPOSITORY                                   TAG           IMAGE ID       CREATED         SIZE
kestra/kestra                                latest-full   481fda1ac930   5 days ago      1.96GB
ghcr.io/immich-app/immich-server             release       0019859e2c6b   2 weeks ago     1.95GB
ghcr.io/immich-app/immich-machine-learning   release       7703d59a8c2b   2 weeks ago     770MB
ubuntu                                       latest        35a88802559d   3 weeks ago     78.1MB
redis                                        <none>        0fc0b666ef9e   5 weeks ago     30.1MB
postgres                                     latest        74cc00b2e28f   7 weeks ago     432MB
tensorchord/pgvecto-rs                       <none>        2e2cb40c55b8   5 months ago    676MB
louislam/dockge                              1             ffb6864bc6f8   5 months ago    568MB
hello-world                                  latest        d2c94e258dcb   14 months ago   13.3kB
pink33n/html-to-pdf                          latest        dfc91456fc2b   4 years ago     401MB
# docker system df -v
Images space usage:

REPOSITORY                                   TAG           IMAGE ID       CREATED         SIZE      SHARED SIZE   UNIQUE SIZE   CONTAINERS
kestra/kestra                                latest-full   481fda1ac930   5 days ago      1.96GB    0B            1.963GB       1
ghcr.io/immich-app/immich-server             release       0019859e2c6b   2 weeks ago     1.95GB    74.83MB       1.871GB       1
ghcr.io/immich-app/immich-machine-learning   release       7703d59a8c2b   2 weeks ago     770MB     74.83MB       694.9MB       1
<none>                                       <none>        0fc0b666ef9e   5 weeks ago     30.1MB    0B            30.06MB       1
postgres                                     latest        74cc00b2e28f   7 weeks ago     432MB     0B            431.7MB       1
<none>                                       <none>        2e2cb40c55b8   5 months ago    676MB     0B            675.8MB       1
louislam/dockge                              1             ffb6864bc6f8   5 months ago    568MB     0B            567.7MB       1
hello-world                                  latest        d2c94e258dcb   14 months ago   13.3kB    0B            13.26kB       1
pink33n/html-to-pdf                          latest        dfc91456fc2b   4 years ago     401MB     0B            400.9MB       1

Containers space usage:

CONTAINER ID   IMAGE                                                COMMAND                  LOCAL VOLUMES   SIZE      CREATED        STATUS                      NAMES
32cf8a43b6d0   pink33n/html-to-pdf                                  "/usr/local/bin/entr…"   0               1.91MB    24 hours ago   Exited (0) 24 hours ago     xenodochial_jones
7ca928d538c1   ghcr.io/immich-app/immich-server:release             "tini -- /bin/bash s…"   1               7.06kB    25 hours ago   Up 7 hours (healthy)        immich_server
bb6a8660ee4b   redis:6.2-alpine                                     "docker-entrypoint.s…"   1               0B        25 hours ago   Up 7 hours (healthy)        immich_redis
c43b84f849d5   tensorchord/pgvecto-rs:pg14-v0.2.0                   "docker-entrypoint.s…"   1               63B       25 hours ago   Up 7 hours (healthy)        immich_postgres
80e5cb740daa   ghcr.io/immich-app/immich-machine-learning:release   "tini -- ./start.sh"     1               24.4kB    25 hours ago   Up 7 hours (healthy)        immich_machine_learning
7003e955969c   kestra/kestra:latest-full                            "docker-entrypoint.s…"   1               520B      25 hours ago   Exited (143) 24 hours ago   kestra-kestra-1
b5e2225d364a   postgres                                             "docker-entrypoint.s…"   1               0B        25 hours ago   Exited (0) 24 hours ago     kestra-postgres-1
f29f9a5ca751   louislam/dockge:1                                    "/usr/bin/dumb-init …"   0               150kB     25 hours ago   Up 7 hours (healthy)        documents-dockge-1
713f315e75c0   hello-world                                          "/hello"                 0               0B        25 hours ago   Exited (0) 25 hours ago     vibrant_hypatia

Local Volumes space usage:

VOLUME NAME                                                        LINKS     SIZE
immich_upload-data                                                 1         24.76GB
kestra_kestra-data                                                 1         0B
kestra_postgres-data                                               1         66.64MB
1b1a8f62f416fb3dc859606458a2f25aacf31677474bf91818f9d7677b58156d   0         2.077kB
7825dd93049c8d0781fd0f99cd0c0b7043eaad9b5a978d251ee8764bf0dfa1ea   1         1.259MB
immich_model-cache                                                 1         800.2MB
immich_postgres-data                                               1         1.128GB

Build cache usage: 0B

CACHE ID   CACHE TYPE   SIZE      CREATED   LAST USED   USAGE     SHARED
docker run -v /dbdata --name dbstore ubuntu /bin/bash
docker run --rm --volumes-from dbstore -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata
cd /home/logan-phares/Documents/proxmox/
docker run -v /dbdata --name dbstore2 ubuntu /bin/bash
# docker exec -it dbstore2 bash
# nano test.text
# docker cp test.text docker_web_1:/dbdata/test.text
# tar -ztvf backup.tar
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /dbdata && ls"
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /dbdata && touch test2.txt"
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /var && tar xvf /backup/backup.tar --strip 1"
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /var && tar xvf /backup/backup.tar --strip 1"
tar -ztvf /home/logan-phares/Documents/proxmox/vzdump-lxc-132-2024_07_02-16_55_20.tar.gz ./etc/vim
cd /home
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /home && tar zxvf /backup/logan-phares/Documents/proxmox/vzdump-lxc-132-2024_07_02-16_55_20.tar.gz ./etc/vim --strip 1"
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /home/etc && ls -la"
docker run --rm --volumes-from dbstore -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /etc/systemd
tar -tvf backup.tar etc/systemd/system
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "cd /home && tar xvf /backup/backup.tar etc/systemd/system"
docker run --rm --volumes-from dbstore2 -v $(pwd):/backup ubuntu bash -c "find / -name "e2scrub_reap.service" 2>/dev/null"
docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres | gzip > "dump.sql.gz"
docker run --rm --volumes-from immich_postgres -v $(pwd):/backup ubuntu bash -c "ls -la"
backup_time=$(date +'%H-%M-%S')
backup_date=$(date +'%Y-%m-%d')
echo "${backup_date}---${backup_time}.tar"
docker run --rm --volumes-from immich_server -v $(pwd):/backup ubuntu bash -c "cd /usr/src/app/upload && ls -la"
docker run --rm --volumes-from immich_server -v $(pwd):/backup ubuntu tar cvf /backup/upload.tar /usr/src/app/upload
tar -tvf upload.tar
networks:
    cont:
        driver:  bridge
        enable_ipv6: false