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

相关推荐

docker-nginx

【前言】 nginx的docker镜像较多, 本文将业务nginx封装为一个docker镜像。 【选择nginx版本】 alpine alpine是一个精简的linux系统,对应的镜像只有7.73M, nginx对应也有基于alpine的版本, 本文选择基于alpine的版本。 stable ngi

Docker私有仓库

【前言】 在本地熟练使用docker后, 下一步就是将本地的docker image推送到远程,方便在其他地方拉取使用 【常见命令】 上一节中讲了docker的常见命令, 详见: https://blog.insistime.com/dockercmds 【官方docker hub】 docker官

jumpserver

【前言】 jumpserver是热门的开源堡垒机, 如果你有很多服务器需要管理, 并且有安全审计等需求, jumpserver是一个不错的选择。 【安装】 安装很简单,推荐在线安装的方式, 地址: https://community.fit2cloud.com//products/jumpserve

mysql-exporter

【前言】 prometheus+grafana搭建监控体系, 本文介绍监控mysql。 【步骤】 修改mysql exporter配置文件 安装mysql exporter mysql授权 修改prometheus配置文件 添加grafana看板 grafana添加mysql监控看板, 地址: ht

prometheus+grafana

【前言】 prometheus+grafana是目前服务监控,数据看板的不二选择。 prometheus官网: https://prometheus.io/ grafana官网: https://grafana.com/ 推荐一个比较好的中文教程: https://prometheus.wang/

redis-exporter

【前言】 使用prometheus+grafana搭建监控体系, 本文介绍如何监控redis。 【步骤】 安装redis exporter 修改prometheus配置文件 添加grafana看板 给grafana添加默认的redis看板, 地址: https://grafana.com/grafa

© 2026 vincentqiao.com . 保留所有权利。