Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/eon01/DockerCheatSheet

🐋 Docker Cheat Sheet 🐋
https://github.com/eon01/DockerCheatSheet

books cleaning-docker course docker docker-compose docker-container docker-image docker-registries docker-registry docker-swarm dockerfiles registry swarm volume

Last synced: 9 days ago
JSON representation

🐋 Docker Cheat Sheet 🐋

Awesome Lists containing this project

README

        

> This repository is trending on Github since some days now. Watch it, we will add many updates in the future.
> Thank you for your support.



[وب سایت](http://dockercheatsheet.painlessdocker.com)

در [ویرگول](https://virgool.io/@elias_rohani/%D8%A8%D8%B1%DA%AF%D9%87-%D8%AA%D9%82%D9%84%D8%A8-%D8%AF%D8%A7%DA%A9%D8%B1-jiquimzzpqmq) بخوانید

# فهرست

[استفاده از کانتینرها]()

[اجرا و متوفق کردن کانتینرها]()

[کسب اطلاعات در کانتینرها]()

[شبکه]()

[پاکسازی داکر]()

[داکر Swarm]()

## لاگین کردن

```
docker login
docker login localhost:8080
```

## خارج شدن

```
docker logout
docker logout localhost:8080
```

## جستجو کردن

```
docker search nginx
docker search --filter stars=3 --no-trunc nginx
```

## چنگان زدن (یا همان دانلود کردن)

```
docker image pull nginx
docker image pull eon01/nginx localhost:5000/myadmin/nginx
```

## بارگذاری کردن

```
docker image push eon01/nginx
docker image push eon01/nginx localhost:5000/myadmin/nginx
```

## اولین اقدامات با کانتینرها

**ساخت و اجرا کانتینر**

**اجرا کردن شبیه ساز**

**برقراری ارتباط از پورت ۸۰ کانتینر به پورت ۳۰۰۰ هاست**

**مونت کردن دایرکتوری جاری در دایکتوری data/ داخل کانتینر**

**در ویندوز این تغییرات را باید ایجاد کنید**

```
-v ${PWD}:/data به > -v "C:\Data":/data
docker container run --name infinite -it -p 3000:80 -v ${PWD}:/data ubuntu:latest
```

## ساخت کانتینر

```
docker container create -t -i eon01/infinite --name infinite
```



## اجرای کانتینر

```
docker container run -it --name infinite -d eon01/infinite
```

## طرز استفاده از کانتینر

```
docker container rename infinite infinity
```

## حذف کانتینر

```
docker container rm infinite
```



## اپدیت کردن کانتینر

```
docker container update --cpu-shares 512 -m 300M infinite
```

## اجرا و متوقف کردن کانتینر

**اجرا**

```
docker container start nginx
```

## متوقف

```
docker container stop nginx
```

## اندازه

```
docker container restart nginx
```

## نگه داشتن (نگه داشتن پروسه های کانتینر)

```
docker container pause nginx
```

## برداشتن

```
docker container unpause nginx
```

## قفل کردن(تا زمان متوقف شدن)

```
docker container wait nginx
```

## فرستادن سیگنال بسته شدن

```
docker container kill nginx
```

## فرستادن سیگنال های دیگر

```
docker container kill -s HUP nginx
```

## متصل شدن به کانتینر موجود

```
docker container attach nginx
```

## گرفتن اطلاعات درباره کانتینرها

**کانتینر های فعال**

```
docker container ls
docker container ls -a
```

## لاگ‌های کانتینر

```
docker logs infinite
```

## نمایش لاگ به صورت انلاین

```
docker container logs infinite -f
```

## اطلاعات درباره کانتینر

```
docker container inspect infinite
docker container inspect --format '{{ .NetworkSettings.IPAddress }}' $(docker ps -q)
```

## اتفاقات کانتینر

```
docker system events infinite
```

## پورت باز

```
docker container port infinite
```

## پروسه های که درحال انجام است

```
docker container top infinite
```

## منابع استفاده شده

```
docker container stats infinite
```

## ایجاد تغییرات در فایل‌ها و دایرکتوری ها سیستم در کانتینر

```
docker container diff infinite
```

## لیست ایمیج ها

```
docker image ls
```

## ساخت ایمیج

```
docker build .
docker build github.com/creack/docker-firefox
docker build - < Dockerfile
docker build - < context.tar.gz
docker build -t eon/infinite .
docker build -f myOtherDockerfile .
curl example.com/remote/Dockerfile | docker build -f - .
```

## پاک کردن ایمیج

```
docker image rm nginx
```

## دانلود وابستگی ها به فایل ارشیو

```
docker image load < ubuntu.tar.gz
docker image load --input ubuntu.tar
```

## ذخیره داده ها در ارشیو

```
docker image save busybox > ubuntu.tar
```

## دیدن تاریخچه ایمیج

```
docker image history
```

## ایجاد ایمیج از کانتینر

```
docker container commit nginx
```

## تک زدن به ایمیج

```
docker image tag nginx eon01/nginx
```

## بارگذاری

```
docker image push eon01/nginx
```

## شبکه

```
docker network create -d overlay MyOverlayNetwork
docker network create -d bridge MyBridgeNetwork
docker network create -d overlay \
--subnet=192.168.0.0/16 \
--subnet=192.170.0.0/16 \
--gateway=192.168.0.100 \
--gateway=192.170.0.100 \
--ip-range=192.168.1.0/24 \
--aux-address="my-router=192.168.1.5" --aux-address="my-switch=192.168.1.6" \
--aux-address="my-printer=192.170.1.5" --aux-address="my-nas=192.170.1.6" \MyOverlayNetwork
```

## حذف شبکه

```
docker network rm MyOverlayNetwork
```

## لیست شبکه ها

```
docker network ls
```

## گرفتن اطلاعات از شبکه

```
docker network inspect MyOverlayNetwork
```

## متصل کردن کانتینر فعال به شبکه

```
docker network connect MyOverlayNetwork nginx
```

## متصل کردن کانتینر به شبکه در زمان اجرا

```
docker container run -it -d --network=MyOverlayNetwork nginx
```

## قطع کردن اتصال از کانتینر

```
docker network disconnect MyOverlayNetwork nginx
```

## به نمایش گذاشتن پورت ها

**با استفاده از Dockerfile می‌توانید پورت را به نمایش در اورید**

```
EXPOSE
```

**همچنین می‌توانید پورت های کانتینر را برروی پورت های هاست به نمایش دراورید**

```
docker run -p $HOST_PORT:$CONTAINER_PORT --name infinite -t infinite
```

## پاک کردن کانتینر فعال

```
docker container rm nginx
```

## حذف کردن کانتینر و volume

```
docker container rm -v nginx
```

## حذف کردن کانتینر با وضعیت خروج

```
docker container rm $(docker container ls -a -f status=exited -q)
```

## پاک کردن تمامی کانتینرهای مانده

```
docker container rm `docker container ls -a -q`
```

## حذف کردن ایمیج

```
docker image rm nginx
```

## پاک کردن dangling استفاده نشده

```
docker image rm $(docker image ls -f dangling=true -q)
```

## پاک‌کردن تمامی ایمیج ها

```
docker image rm $(docker image ls -a -q)
```

## پاک‌کردن تمامی ایمیج ها بدون تگ

```
docker image rm -f $(docker image ls | grep "^" | awk "{print $3}")
```

## متوقف کردن و پاک کردن تمامی کانتینرها

```
docker container stop $(docker container ls -a -q) && docker container rm $(docker container ls -a -q)
```

## پاک کردن dangling استفاده نشده (volume)

```
docker volume rm $(docker volume ls -f dangling=true -q)
```

## پاکسازی تمامی کانتینرها،ایمیج‌ها،شبکه‌ها و volume استفاده نشده

```
docker system prune -f
```

## پاکسازی کامل

```
docker system prune -a
Docker Swarm
```

## نصب دارکرSwarm

```
curl -ssl https://get.docker.com | bash
```

## مقدمات برای بارگذاری

```
docker swarm init --advertise-addr 192.168.10.1
```

## اتصال به گره کنترل

```
docker swarm join-token manager
```

## لیست سرویس ها

```
docker service ls
```

## لیست گره ها

```
docker node ls
```

## ایجاد سرویس

```
docker service create --name vote -p 8080:80 instavote/vote
```

## لیست کارها

```
docker service ps
```

## خدمات

```
docker service scale vote=3
```

## اپدیت کردن سرویس ها

```
docker service update --image instavote/vote:movies vote
docker service update --force --update-parallelism 1 --update-delay 30s nginx
docker service update --update-parallelism 5--update-delay 2s --image instavote/vote:indent vote
docker service update --limit-cpu 2 nginx
docker service update --replicas=5 nginxf
```

در [ویرگول](https://virgool.io/@elias_rohani/%D8%A8%D8%B1%DA%AF%D9%87-%D8%AA%D9%82%D9%84%D8%A8-%D8%AF%D8%A7%DA%A9%D8%B1-jiquimzzpqmq) بخوانید