Logo Vincent
返回文章列表

Docker常见命令

DevOps
Docker常见命令

docker 安装

## mac
brew install --cask --appdir=/Applications docker

## centos
sudo yum update
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
sudo systemctl enable docker
sudo docker --version

docker 常见镜像

# alpine
docker run -itd alpine /bin/sh

# memcached
docker run -d -p 11211:11211 memcached

docker 常用命令

# pull
docker pull image-name

# images
docker images
docker rmi image-id
docker build -t image-name:tag .

# container
docker run -d -p host-port:container-port image-name
docker ps -a
docker rm -f container-id
docker logs container-id
docker exec -it container-id /bin/bash

# container run cpu memory
docker run -d -p host-port:container-port --cpus="2" --memory="200m" --restart="always" --name="container-name" image-name
docker inspect --format='{{.HostConfig.NanoCpus}}' <container_id_or_name>
docker inspect --format='{{.HostConfig.Memory}}' <container_id_or_name>

docker run

## 普通
docker run ubuntu:15.10 /bin/echo "Hello world"

## 交互
docker run -i -t ubuntu:15.10 /bin/bash

## 后台
docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"

## name
docker run -itd --name ubuntu-test ubuntu /bin/bash

docker 容器

## 查看正在运行的容器
docker ps

## 查看所有容器,包括目前没运行的容器
docker ps -a

## 停止正在运行的容器
docker stop id

## 重启容器
docker restart id

## 删除容器
docker rm -f 1e560fca3906

## 查看容器内的日志
docker logs id

## 进入容器
docker exec -it 243c32535da7 /bin/bash

## 导出容器
docker export 1e560fca3906 > ubuntu.tar

## 导入容器
docker import - test/ubuntu:v1

## 查看容器进程
docker top id

docker 镜像

## 列出镜像
docker images

## 拉取镜像
docker pull ubuntu

## 查找镜像
docker search httpd

## 删除镜像
docker rmi hello-world

## 更新镜像
docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2

## 构建镜像
### dockerfile
#### 每一个指令都会在镜像上创建一个新的层,每一个指令的前缀都必须是大写的。
#### 第一条FROM,指定使用哪个镜像源
#### RUN 指令告诉docker 在镜像内执行命令,安装了什么。。。
#### 然后,我们使用 Dockerfile 文件,通过 docker build 命令来构建一个镜像。
FROM    centos:6.7
MAINTAINER      Fisher "fisher@sudops.com"

RUN     /bin/echo 'root:123456' |chpasswd
RUN     useradd runoob
RUN     /bin/echo 'runoob:123456' |chpasswd
RUN     /bin/echo -e "LANG=\"en_US.UTF-8\"" >/etc/default/local
EXPOSE  22
EXPOSE  80
CMD     /usr/sbin/sshd -D

### build
docker build -t runoob/centos:6.7 .

## 给镜像打tag
docker tag 860c279d2fec runoob/centos:dev
© 2026 vincentqiao.com . 保留所有权利。