【原】Docker笔记

参考:
Docker教程
容器与镜像的关系

CentOS Docker 安装

移除旧的版本:

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

安装一些必要的系统工具:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

添加软件源信息:

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新 yum 缓存:

sudo yum makecache fast

安装 Docker-ce:

sudo yum -y install docker-ce

启动 Docker 后台服务:

sudo systemctl start docker

测试运行 hello-world:

[root@runoob ~]# docker run hello-world

Docker命令

# 查询容器命令
$ docker ps [options]

# 查看某一容器详细信息
$ docker inspect 容器id(可以区分的前几位即可)

# 查询镜像命令
$ docker images [options]

# docker容器可以理解为在沙盒中运行的进程
# 进程结束的时候,容器也就停止了
# 命令/程序在镜像中运行的进程就是就是容器???
$ docker run 镜像 命令

# 保存对容器的修改(通常就是安装环境、发布配置文件、部署新版本等) - 生成新的镜像
# 先查询出来修改后容器的id
$  docker ps -l
# 保存容器到新的镜像,id只用前几位进行区分就行
$ docker commit 698 learn/ping

# 然后就可以运行新的镜像
$ docker run lean/ping ping www.www.baidu.com

# 发布镜像,push,类似于git
# 这里的learn其实是用户名,用的时候再看怎么搞
$ docker push learn/ping

# 运行时参数
# -d 表示后台运行
# -p 5000:5000 表示容器内部的 5000 端口映射到我们本地主机的 5000 端口上
$ docker run -d -p 5000:5000 training/webapp python app.py
# -P 表示容器内部端口随机映射到主机的高端口
$ docker run -d -P training/webapp python app.py

# 可以查看指定 (ID或者名字)容器的某个确定端口映射到宿主机的端口号
$ docker port 容器id

# 可以查看容器内部的标准输出
# -f:让 docker logs 像使用 tail -f 一样来输出容器内部的标准输出。
$ docker logs -f 容器id

# 停止WEB应用容器
$ docker stop 容器id或名称

# 重启WEB应用容器
$ docker start 容器名称

# 移除WEB应用容器
$ docker rm 容器名称

# -t:在新容器内指定一个伪终端或终端。
# -i:允许你对容器内的标准输入 (STDIN) 进行交互。
$ docker run -t -i centos /bin/bash

猜你喜欢

转载自blog.csdn.net/Csunshine211/article/details/82625317
今日推荐