文章目录

  • 前言
  • 一、docker基础命令
  • 二、docker镜像命令
    • 1、docker images:列出本地主机的镜像
    • 2、 docker search :查看镜像
    • 3、docker pull:拉取镜像
    • 4、docker rmi : 删除docker镜像
  • 三、docker容器命令
    • 1、环境准备
    • 2、运行容器
    • 3、启动、停止、重启容器
    • 4、查看容器日志
    • 5、进入容器
  • 四、容器端口映射
    • 1、tomcat端口映射案例
  • 五、Docker 容器与宿主服务器文件复制

前言

当看到此篇文章时,你应该已经搭建好了docker环境了吧?如果没有,请移步另一个博客:docker的安装和设置镜像加速

一、docker基础命令

docker --version   查看版本号
systemctl start docker  启动docker
systemctl daemon-reload  守护进程重启
systemctl restart docker  重启docker
docker service docker stop  关闭docker
docker stats 查看docker占用的内存

守护进程:在docker中,守护进程用于监控指定的进程,当发现目标进程工作异常时,可以对该目标进程进行控制

二、docker镜像命令

docker镜像好比是一个模版,可以通过这个模版来创建容器服务,通过这个镜像可以创建多个容器
容器与容器之间相互是隔离的。

1、docker images:列出本地主机的镜像

docker images  列出本地主机的镜像


REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像id
CREATED:镜像创建时间
SIZE:镜像大小

2、 docker search :查看镜像

docker search xxxx  查看某个服务的镜像是否存在
docker search --limit 5 mysql  查看mysql服务的镜像,且只列出5个
docker search mysql --limit  4 --no-trunc   查看mysql服务的镜像,且只列出4个,拦截信息不会被截断(展示完整信息)
docker search mysql  --filter is-official=true  查看mysql服务的镜像,根据官方镜像过滤


NAME:镜像仓库源的名称
DESCRIPTION: 镜像的描述
OFFICIAL:是否 docker 官方发布。如果是官方镜像,显示 “OK”
stars:类似 Github 里面的 star,表示点赞、喜欢的意思
AUTOMATED:自动构建。如果是自动化构建,显示“OK”

3、docker pull:拉取镜像

Docker Hub地址:https://hub.docker.com/_/


docker pull xxx    下载镜像
docker pull mysql  从Docker Hub里,下载mysql最新的镜像
docker pull -a mysql 从Docker Hub下载REPOSITORY为mysql的所有镜像
docker pull mysql:5.7 从Docker Hub下载tag为5.7的mysql镜像

4、docker rmi : 删除docker镜像

docker rmi id号/名字  删除docker镜像
docker rmi c20987f18b13  删除我本地的mysql镜像,根据镜像id删除
docker rmi mysql   删除我本地的mysql镜像,根据镜像名字删除
docker rmi -f mysql 强制删除mysql镜像
docker rmi -f nginx mysql  同时删除我本地的nginx、mysql镜像



三、docker容器命令

1、环境准备

docker pull tomcat# 先拉取一个centos镜像

2、运行容器

docker run --name container-name -d image-name:tag  运行容器
docker run --name tomcat_ -d tomcat  通过tomcat镜像,生成名为:tomcat_的容器

–name:自定义容器名
-d:表示后台运行
image-name:指定运行的镜像名称
tag:镜像的版本

3、启动、停止、重启容器

docker ps -a  先查看所有容器信息


CONTAINER ID: 容器 ID。

IMAGE: 使用的镜像。

COMMAND: 启动容器时运行的命令。

CREATED: 容器的创建时间。

STATUS: 容器状态。

docker start id  根据容器id启动容器
docker start 1d13832397e6  启动我本地的tomcat_容器
docker start name  根据容器名字启动容器
docker start tomcat_  启动我本地的tomcat_容器
docker restart id/name 根据容器id或者容器名字重启容器
docker restart tomcat_ 重启我本地的tomcat_容器
docker stop id/name 停止容器
docker kill id/name 停止容器
docker stop tomcat_  / docker kill tomcat_  停止我本地的tomcat_容器

4、查看容器日志

docker logs id/name 查看容器日志
docker logs tomcat_ 查看tomcat_容器的日志

5、进入容器

docker exec -it 容器名字/容器id  /bin/bash  进入容器
docker exec -it tomcat_ /bin/bash  进入tomcat_容器内

四、容器端口映射

docker run --name 容器名字 -d 镜像名字:tag:单纯的如此运行容器,程序占用的是 Docker 容器内部的端口,并不是服务器对外的访问端口,所以必须做 端口映射 将服务器的实际端口映射到 Docker 容器中的端口才能访问。

docker run --name 容器名字:tag -d -p 服务器端口:Docker端口 image-name  端口映射

–name:自定义容器名,不指定时,docker 会自动生成一个名称

-d:后台运行容器

-p: Linux 服务器与 Docker 容器的端口映射,默认情况下容器中镜像占用的端口是 Docker 容器中的端口,与外界是隔绝的,必须进行端口映射才能访问。

image-name:指定运行的镜像名称以及 Tag

1、tomcat端口映射案例

[root@iZm5e8w23bqasdqw00wz524Z ~]# docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
0e29546d541c: Pull complete
9b829c73b52b: Pull complete
cb5b7ae36172: Pull complete
6494e4811622: Pull complete
668f6fcc5fa5: Pull complete
dc120c3e0290: Pull complete
8f7c0eebb7b1: Pull complete
77b694f83996: Pull complete
0f611256ec3a: Pull complete
4f25def12f23: Pull complete
Digest: sha256:9dee185c3b161cdfede1f5e35e8b56ebc9de88ed3a79526939701f3537a52324
Status: Downloaded newer image for tomcat:latest
docker.io/library/tomcat:latest
[root@iZm5e8w23bqasdqw00wz524Z ~]# docker run --name tomcat1 -d -p 9001:8080 tomcat
c7ea8efea19f4fdde6ff63a1cd21ad4c329592ec55a90713ee75fa1f4e5e2ae6
[root@iZm5e8w23bqasdqw00wz524Z ~]# docker exec -it tomcat1 /bin/bash
root@c7ea8efea19f:/usr/local/tomcat# ls -l
total 160
-rw-r--r-- 1 root root 18994 Dec  2 22:01 BUILDING.txt
-rw-r--r-- 1 root root  6210 Dec  2 22:01 CONTRIBUTING.md
-rw-r--r-- 1 root root 60269 Dec  2 22:01 LICENSE
-rw-r--r-- 1 root root  2333 Dec  2 22:01 NOTICE
-rw-r--r-- 1 root root  3378 Dec  2 22:01 README.md
-rw-r--r-- 1 root root  6905 Dec  2 22:01 RELEASE-NOTES
-rw-r--r-- 1 root root 16517 Dec  2 22:01 RUNNING.txt
drwxr-xr-x 2 root root  4096 Dec 22 17:07 bin
drwxr-xr-x 1 root root  4096 Apr 11 10:44 conf
drwxr-xr-x 2 root root  4096 Dec 22 17:06 lib
drwxrwxrwx 1 root root  4096 Apr 11 10:44 logs
drwxr-xr-x 2 root root  4096 Dec 22 17:07 native-jni-lib
drwxrwxrwx 2 root root  4096 Dec 22 17:06 temp
drwxr-xr-x 2 root root  4096 Dec 22 17:06 webapps
drwxr-xr-x 7 root root  4096 Dec  2 22:01 webapps.dist
drwxrwxrwx 2 root root  4096 Dec  2 22:01 work
root@c7ea8efea19f:/usr/local/tomcat# exit
exit
[root@iZm5e8w23bqasdqw00wz524Z~]#
docker pull tomcat  拉取tomcat镜像
docker run --name tomcat1 -d -p 9001:8080 tomcat docker端口8080映射外部端口9001
docker tomcat1 exec -it /bin/bash  进入tomcat容器内
ls -l   查看目录结构

可以看到,进入tomcat1容器内,如同是在本地进入安装程序的根目录下一样,进去后可以执行 linux 命令。同样,可以通过exit命令(或者是ctrl+D)来退出。

五、Docker 容器与宿主服务器文件复制

cd /home  我先进入到根目录
touch 11.txt    创建了一个11.txt文件
docker cp /home/11.txt tomcat1:/home/11.txt  将宿主机的11.txt文件,复制到tomcat1容器的home目录下
docker exec -it tomcat1 /bin/bash  进入tomcat1容器内
cd /home  进入tomcat1容器的home目录
ls     查看当前目录下的文件
[root@iZm5e8w23bqasdqw00wz524Z /]# cd /home
[root@iZm5e8w23bqasdqw00wz524Z home]# touch 11.txt
[root@iZm5e8w23bqasdqw00wz524Z home]# docker cp /home/11.txt tomcat1:/home/11.txt
[root@iZm5e8w23bqasdqw00wz524Z  home]# docker exec -it tomcat1 /bin/bash
root@c7ea8efea19f:/usr/local/tomcat# cd /home
root@c7ea8efea19f:/home# ls
11.txt
root@c7ea8efea19f:/home#

docker cp 宿主机路径/11.txt tomcat1:容器路径/11.txt 将宿主机的11.txt文件,复制到tomcat1容器的home目录下

docker镜像、容器 常用命令,容器端口映射相关推荐

  1. docker环境安装,镜像和容器常用命令

    docker学习笔记 1 docker环境安装 1.1 安装yum-utils yum install -y yum-utils device-mapper-persistent-data lvm2 ...

  2. docker 安装与常用命令与常用容器(containers)环境

    注意区别 container 与 image 的关系,container 的建立需要 image 的承载,也即 container 依赖 image,停止并删除了 container 并不会删除 im ...

  3. docker之容器常用命令及基本操作

    docker之容器常用命令及基本操作 文章目录 docker之容器常用命令及基本操作 一.查看容器 `docker ps`常用选项 二.查看容器日志 `docker logs`命令选项 三.运行容器 ...

  4. docker 容器常用命令及基本操作

    docker之容器常用命令及基本操作 一.查看容器 ps:该子命令能查看当前正在运行的容器 示例: [root@localhost ~ ]# docker ps CONTAINER ID IMAGE ...

  5. Linux 设置Docker容器开机自启动,Dokcer容器常用命令总结。

    文章目录 Linux Dokcer容器常用命令总结 一.docker 常用基础命令总结 二.工作中常用docker命令 三.查看容器挂载目录 四.容器拷贝文件 五.设置搭建好容器开机自启 六.开启do ...

  6. Docker系列之常用命令操作手册

    Docker系列之常用命令操作手册 继上一篇博客Docker系列之原理简单介绍之后,本博客对常用的Docker命令进行实践 文章目录 1.安装虚拟机 2.安装Docker 3.Docker镜像操作 4 ...

  7. 狂神说--docker学习笔记-docker安装,常用命令,以及使用

    狂神说bilibili视频地址:https://www.bilibili.com/video/BV1og4y1q7M4?p=1 1. Docker概述 1.1 Docker为什么出现? 大家经常做一款 ...

  8. docker系列一 docker 安装和常用命令

    安装Docker 在Ubuntu sudo apt-get update sudo apt-get install docker 执行sudo docker version,如果看到如下信息则表示安装 ...

  9. Docker理解及常用命令一

    doccker学习笔记二:docker理解及常用命令 docker run理解 docker工作原理 Docker的常用命令 帮助命令 镜像命令 容器命令 docker run理解 回顾刚刚安装doc ...

  10. linux命令后创建 iso 镜像_袋鼠存储 v1.4.1 来了:docker镜像,linux命令行安装,客户端......

    袋鼠存储是一款跨平台,跨网络管理数据,就近为用户提供服务的分布式服务.可通过官网文档 roostore.com/docs# 详细了解 袋鼠存储自从发布以来,已得到大量用户的下载与使用反馈,在此感谢大家 ...

最新文章

  1. 有耐心就能学好Linux
  2. 理论应用实例水杯_PID理解起来很难?系统讲解PID控制及参数调节,理论加实际才好...
  3. python 操作 hbase
  4. SolidEdge如何自动标注尺寸
  5. 4K视频直播与点播系统的搭建与体验
  6. php 当请求被取消,jQuery ajax请求被取消会减慢当前请求
  7. 怎么看rx580是不是470刷的_【BIOS】网上都没有的教程 RX470 RX480 RX570 RX580显卡BIOS刷黑了怎么办?自救方法...
  8. 锚具ovm是什么意思_OVM锚具(柳州欧维姆)
  9. 智能灯泡控APP快速开发定制介绍
  10. dlib.get_frontal_facedetector UINT8 和float格式互相转换
  11. 2020年第十一届java B组第一场蓝桥杯省赛真题
  12. 软件的接口设计图_刚进装修公司该学什么软件
  13. thread dump分析
  14. Adb 实用命令(网络包、日志、调优相关)
  15. 药店计算机台账管理,药房每月进销存台账.xls
  16. Java字符串模板格式化汇总8法(附性能对比)
  17. 网络协议——网络架构
  18. KendoReact R2 2022轻松定制的主题生成器工具
  19. 持续交付/持续集成/持续测试/持续部署
  20. 预约到店软件开发定制搭建详细方案

热门文章

  1. php(TP5)+redis实现秒杀抢购(限制用户购买次数)(附源码)
  2. linux实验六磁盘综合管理
  3. java调用淘宝api实例
  4. ROS与Arduino IDE 安装,比官网详细点(第一次学)
  5. python deepcopy_python中的深拷贝(deepcopy)和浅拷贝(copy)介绍及代码参考
  6. 关于基础搜索中的加难题(穿墙术)的讨论
  7. 计算机存储盘划分,一分钟让你电脑无损分区,让你磁盘保存原文件
  8. OpenCV进行四边形检测
  9. Python的一款非常棒的REPL: ptpython
  10. kali激活phpstorm_phpstorm2018.2永久激活,亲测有效!!!