[Docker] ‘s Basic Usage

Get

bash 复制代码
# Mac
brew install docker-desktop

Image

Docker Hub

sh 复制代码
# pull(specific platform)
docker pull [--platform=xxx][image]

# query
docker images

# remove image
docker rmi [ID/NAME]

Container

sh 复制代码
# run
docker run 
[-d, detached mode] 
[-p xx:xx, port mapping] 
[-v /xx/xx:/xx/xx, volume mapping] 
[-e, environment]
[--name xx, specify the name]
[-it --rm, enter container and remove it automatically after use]
[--restart always/unless-stopped, always restart & restart contrainer that were unexpected stopped but do not restart contatiner that were manually stopped]
[--network {host} xx]
[ID/NAME]

# process status (only running)
docker ps [-a, all containers]

# remove container
docker rm [-f, --force] [ID/NAME]

# volume
docker volume list
docker volume rm [NAME]
docker volume prune -a	# remove all local volumes not used by containers

# option
docker start [ID/NAME]
docker stop [ID/NAME]

# inspect, view container information. 
docker inspect [ID/NAME]

# logs
docker logs [-f, --follow ] [ID/NAME]

# enter the interior of the container
docker exec -it [ID/NAME] /bin/sh

# run command on the interior of the container 
docker exec [ID/NAME] [CMD]

P.S.

The usage of docker run -v

  1. Bind Mount, synchronous update
    -v /host:/container[:ro, read-only]
  2. Named volume, local data persistent
    -v myvolume:/container

Docker file

sh 复制代码
# Docker file
FROM [basic image]

WORKDIR [change a dir as the woking dir]

COPY [relative local dir] [relative image dir]

RUN [commands to install dependencies]

EXPOSE [port]

CMD [ ["xx", "xx"], the default command executed when the container start]
sh 复制代码
# Build 
docker build [-t {username/}xx{:version}, named image] [build dir]

# Push image to Docker Hub
docker login
docker push [username/imageName]

Network

sh 复制代码
# Create Subnet
docker network create [NAME]

# remove 
docker network rm

# list
docker network list

Docker Compose

sh 复制代码
# docker-compose.yaml
services:
	serviceA:
		image: xx
		environment:
			xx: xx
		volumes:
			- /datadir:/data/db
	
	serviceB:
		iamge: xx
		ports:
			- 8081: 8081

# Start
docker compose [-f /dir/file, file] up [-d, detached mode]  
相关推荐
一直都在5722 小时前
K8s详解
云原生·容器·kubernetes
恋红尘2 小时前
K8S 高级调度-叩丁狼
adb·容器·kubernetes
恋红尘2 小时前
K8S 控制器-资源调度-叩丁狼
linux·docker·kubernetes
hjxu201611 小时前
【OpenClaw 龙虾养成笔记一】在远程服务器,使用Docker安装OpenClaw
服务器·笔记·docker
Stewie1213814 小时前
Docker 面试题
运维·docker·容器
vpk11214 小时前
Docker Compose 安装 Redis
redis·docker·容器
last demo16 小时前
Docker-compose和图形界面管理
docker·容器·eureka
好像不对劲18 小时前
【docker】win10 wsl docker不能挂GPU
运维·docker·容器·wsl
江畔何人初18 小时前
Docker、containerd、CRI、shim 之间的关系
运维·docker·云原生·容器·kubernetes