Summaries/Overig/Docker/commands.md

104 lines
2.8 KiB
Markdown
Raw Normal View History

2022-08-09 21:04:44 +02:00
# Docker
2022-08-13 20:29:49 +02:00
### connect to running container
2024-02-19 22:01:37 +01:00
```bash
2022-08-13 20:29:49 +02:00
docker exec -it <container-name> bash
2024-02-19 22:01:37 +01:00
```
### start stopped container. See <stopped-container-name> with docker ps -a
2022-08-13 20:29:49 +02:00
2024-02-19 22:01:37 +01:00
```bash
docker start <stopped-container-name>
```
2022-08-09 21:04:44 +02:00
2024-02-19 22:01:37 +01:00
### pytorch; standard container
2022-08-09 21:04:44 +02:00
```bash
2024-02-19 22:01:37 +01:00
docker run -it --gpus all pytorch/pytorch:latest bash
docker run -d --gpus all pytorch/pytorch:latest # run as deamon
2022-08-09 21:04:44 +02:00
```
2024-02-19 22:01:37 +01:00
docker logs -f
2022-08-09 21:04:44 +02:00
2024-02-19 22:01:37 +01:00
### docker ipaddress or running container
2022-08-09 21:04:44 +02:00
2024-02-19 22:01:37 +01:00
docker inspect <containernameorid>| grep '"IPAddress"' | head -n 1</containernameorid>
2022-08-09 21:04:44 +02:00
### run iterative python program directly
docker run --rm -v $(pwd):/src --rm python:latest python /src/hello-world.py
### run iterative python shell
docker run --rm -it -v $(pwd):/src --rm python:latest python
### run bash inside python container
docker run --rm -it -v $(pwd):/src --rm python:latest /bin/bash
### run a daemon with option -d
```bash
docker run --rm --name my-postgres -e POSTGRES_PASSWORD=qw12aap -d postgres:latest
docker exec -it my-postgres psql -h localhost -U postgres -d postgres
```
### docker files
```dockerfile
FROM python:latest
RUN pip3 install numpy
CMD python3 /src/hello-world.py
```
### docker networks
Usage: docker network COMMAND
Commands:
connect Connect a container to a network
create Create a network
disconnect Disconnect a container from a network
inspect Display detailed information on one or more networks
ls List networks
prune Remove all unused networks
rm Remove one or more networks
```bash
docker network create net_1
docker run --rm -d --net net_1 --name my_py -v $(pwd):/src python:latest python3 /src/run.py
docker run --rm -it --net net_1 alpine:latest /bin/bash
docker network create net_2
docker run --rm --name my-postgres --network net_2 -e POSTGRES_PASSWORD=qw12aap -d postgres:latest
docker run -it --rm --name my_postgre2 --network net_2 postgres:latest /bin/bash
```
inside: psql -U postgres -h my-postgres
### Docker Compose
```docker-compose
version: '3'
services:
python:
image: python:latest
container_name: my_py
volumes:
- .:/src
command: python3 /src/run.py
restart: always
postgres:
image: postgres:latest
container_name: my_post
environment:
- e POSTGRES_PASSWORD=qw12aap
restart: always
alpine:
image: alpine:latest
command: echo "hello from alpine"
restart: always
```
2022-08-13 20:29:49 +02:00
[How To Remove Docker Images, Containers, and Volumes](https://www.digitalocean.com/community/tutorials/how-to-remove-docker-images-containers-and-volumes)
[How to Troubleshoot “Cannot Connect to the Docker Daemon” Errors](https://www.howtogeek.com/devops/how-to-troubleshoot-cannot-connect-to-the-docker-daemon-errors/)