Docker基础命令(一)

Docker使用1

一、运行终端

打开终端,输入docker images ,如果运行正常,表示docker已经可以在本电脑上使用了

 Docker基础命令(一)_第1张图片

二、docker常用命令

指令 说明
docker images 查看已下载的镜像
docker rmi 镜像名称:标签名 删除已下载的镜像
docker search 镜像 从官方仓库(hub.docker.com)查找镜像
docker pull 镜像名称:标签名 标签名默认是 latest,代表最新版本。
docker run 创建容器
docker ps 列出运行中的容器(运行中)
docker ps -a 列出所有的容器(运行、未运行)
docker rm 容器名称 删除停止的容器
docker rm -f 容器名称 删除运行中的容器
docker start 容器名称 启动容器
docker stop 容器名称 停止容器
docker restart 容器名称 重启容器
docker exec 执行容器中的指令

如果在使用过程中有疑惑的地方,可以使用帮助文档查看

Docker基础命令(一)_第2张图片

 

三、第一次使用docker

案例:Docker 运行MySql

1. 拉取MySql镜像

docker pull mysql:5.7

 下载完成后,我们就可以在本地镜像列表里看到名为 mysql ,标签为5.5的镜像

Docker基础命令(一)_第3张图片

 

2. 使用MySql镜像

运行容器

docker run -d --name=mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7命令说明:
  • --name=mysql:为容器指定一个名称为mysql
  • -p 3306:3306:将容器的(后面的3306) 3306 端口映射到主机的(前面的3306) 3306端口。
  • -d:后台运行容器,并返回容器ID。
  • -e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码为123456。
  • mysql:5.7 要使用的镜像的名称

注意:

如果本地已经使用了3306端口,那么可以容器的3306端口映射到本机端口的3307或者其他的

docker run -d --name=mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

运行效果:

 

查看状态

 

3. 连接数据库

Docker基础命令(一)_第4张图片

Docker基础命令(一)_第5张图片

Docker基础命令(一)_第6张图片

四、Docker常用命令说明

4.1 Docker pull 命令

docker pull : 从镜像仓库中拉取或者更新指定镜像

语法

docker pull [OPTIONS] NAME[:TAG|@DIGEST]

OPTIONS说明:

-a :拉取所有 tagged 镜像

实例

  • 从Docker Hub下载MySql 8.0.1版镜像

      docker pull mysql:8.0.1
  • 从Docker Hub下载REPOSITORY为mysql的所有版本的镜像

      docker pull -a mysql

4.2 Docker images 命令

docker images : 列出本地镜像

语法

docker images [OPTIONS] [REPOSITORY[:TAG]]

OPTIONS说明:

  • -a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
  • --digests :显示镜像的摘要信息
  • -f :显示满足条件的镜像
  • --format :指定返回值的模板文件
  • --no-trunc :显示完整的镜像信息
  • -q :只显示镜像ID

实例

  • 查看本地所有镜像列表

      docker images

    Docker基础命令(一)_第7张图片

  • 列出本地镜像中镜像名为ubuntu的镜像列表

      docker images  ubuntu

    Docker基础命令(一)_第8张图片

4.3 Docker tag 命令

docker tag : 标记本地镜像,将其归入某一仓库

语法

docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

实例

将镜像registry.cn-hangzhou.aliyuncs.com/xavier/laravel标记为test/laravel:latest镜像

docker tag registry.cn-hangzhou.aliyuncs.com/xavier/laravel test/laravel
docker images  laravel

image-20191115161457669

4.4 Docker rmi 命令

docker rmi : 删除本地一个或多个镜像

语法

docker rmi [OPTIONS] IMAGE [IMAGE...]

OPTIONS说明:

  • -f :强制删除;
  • --no-prune :不移除该镜像的过程镜像,默认移除;

什么是过程镜像:在构建新镜像的过程中产生的镜像或者依赖的镜像

实例

强制删除本地镜像mysql:5.5

docker rmi -f mysql:5.5 mysql:5.6

什么时候需要用强制删除呢?在你普通删除删不掉的时候

4.5 Docker run 命令

docker run :创建一个新的容器并运行一个命令

语法

docker run --name 容器名称 -d -p 主机端口:容器内端口 -e 环境变量 --link 其它容器名:容器中别名 镜像名称:标签名

OPTIONS说明:

  • -d: 后台运行容器,并返回容器ID;
  • -i: 以交互模式运行容器,通常与 -t 同时使用;
  • -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
  • --name="nginx-lb": 为容器指定一个名称;
  • -e username="ritchie": 设置环境变量;
  • -m :设置容器使用内存最大值;
  • --link=[]: 添加链接到另一个容器;当要访问其它容器中的内容时,需要先链接才可以使用
  • -p: 开放一个端口或一组端口

实例

使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为wuxidixi。且映射容器80端口到主机8000端口

docker run --name=wuxidixi -d  -p 80:80 nginx:latest

4.6 Docker start/stop/restart 命令

docker start :启动一个或多少已经被停止的容器

docker stop :停止一个运行中的容器

docker restart :重启容器

语法

docker start CONTAINER 
docker stop CONTAINER 
docker restart CONTAINER 

实例

停止运行中的容器

docker stop 容器id

启动已被停止的容器mysql

docker start 容器id

重启容器

docker restart 容器id

4.7 Docker rm 命令

docker rm :删除一个或多个容器

语法

docker rm [OPTIONS] CONTAINER [CONTAINER...]

OPTIONS说明:

  • -f :通过SIGKILL信号强制删除一个运行中的容器
  • -l :移除容器间的网络连接,而非容器本身
  • -v :-v 删除与容器关联的卷

实例

s强制删除容器mysql

docker rm -f mysql

移除容器对容器mysql的连接,连接名mysql

docker rm -l mysql

删除容器nginx01,并删除容器挂载的数据卷

docker rm -v nginx01

你可能感兴趣的:(docker,容器,运维)