Docker常见命令
-
docker官网
-
docker概念
-
image:镜像
-
container:容器,镜像的运行实例
-
repository:仓库,保存镜像的地方
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