Docker与容器化-02-与镜像和容器操作相关的命令
文章目录
- 一.镜像相关命令
- 1.1 查看镜像
- 1.2 搜索镜像
- 1.3 拉取镜像
- 1.4 删除镜像
- 二. 容器相关命令
- 2.1 查看容器
- 2.2 创建与启动容器
- a.交互式方式创建容器
- b.守护式方式创建容器
- 2.3 停止与启动容器
- 2.4 文件拷贝
- 2.5 目录挂载
- 2.6 查看容器IP地址
- 2.7 删除容器
- 三. 使用镜像部署应用容器示例
- 3.1 MySQL部署
- 3.2 tomcat部署
- 3.3 Nginx部署
- 3.4 Redis部署
一.镜像相关命令
1.1 查看镜像
使用命令:
docker images
参数含义:
REPOSITORY:镜像名称
TAG:镜像标签
IMAGE ID:镜像ID
CREATED:镜像的创建日期(不是获取该镜像的日期)
SIZE:镜像大小
这些镜像都是存储在Docker宿主机的/var/lib/docker目录下
1.2 搜索镜像
如果你需要从网络中查找需要的镜像,可以通过以下命令搜索
docker search 镜像名称
NAME:仓库名称
DESCRIPTION:镜像描述
STARS:用户评价,反应一个镜像的受欢迎程度
OFFICIAL:是否官方
AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的
1.3 拉取镜像
拉取镜像就是从中央仓库中下载镜像到本地
docker pull 镜像名称
例如,下载centos7镜像
docker pull centos:7
1.4 删除镜像
按镜像ID删除镜像
docker rmi 镜像ID
删除所有镜像
docker rmi `docker images -q`
注:这是一个双层命令,内层命令docker images -q
的结果作为外层命令的docker rmi
命令的输入
二. 容器相关命令
2.1 查看容器
查看正在运行的容器
docker ps
查看所有容器
docker ps –a
查看最后一次运行的容器
docker ps –l
查看停止的容器
docker ps -f status=exited
2.2 创建与启动容器
创建容器命令:docker run
创建容器常用的参数:
-i:表示运行容器
-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
–name :为创建的容器命名。
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射
docker容器在创建后便立即启动,但创建方式有两种,守护式和交互式,守护式启动后不会立刻登录进容器,如果需要进入容器需要使用命令登录,交互式启动后会直接登录进容器。
a.交互式方式创建容器
docker run -it --name=容器名称 镜像名称:标签 /bin/bash
这时我们通过ps命令查看,发现可以看到启动的容器,状态为启动状态
退出当前容器
exit
b.守护式方式创建容器
docker run -di --name=容器名称 镜像名称:标签
登录守护式容器方式:
docker exec -it 容器名称 (或者容器ID) /bin/bash
退出容器
exit
2.3 停止与启动容器
停止容器:
docker stop 容器名称(或者容器ID)
启动容器:
docker start 容器名称(或者容器ID)
2.4 文件拷贝
如果我们需要将文件拷贝到容器内可以使用cp命令
docker cp 需要拷贝的文件或目录 容器名称:容器目录
也可以将文件从容器内拷贝出来
docker cp 容器名称:容器目录 需要拷贝的文件或目录
2.5 目录挂载
我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。
创建容器 添加-v参数 后边为 宿主机目录:容器目录,例如:
docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos3 centos:7
如果你共享的是多级的目录,可能会出现权限不足的提示。
这是因为CentOS7中的安全模块selinux把权限禁掉了,我们需要添加参数 --privileged=true 来解决挂载的目录没有权限的问题
2.6 查看容器IP地址
通过以下命令查看容器运行的各种数据
docker inspect 容器名称(容器ID)
也可以直接执行下面的命令直接输出IP地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名称(容器ID)
2.7 删除容器
删除指定的容器:
docker rm 容器名称(容器ID)
三. 使用镜像部署应用容器示例
3.1 MySQL部署
(1)拉取mysql镜像
docker pull centos/mysql-57-centos7
(2)创建容器
docker run -di --name=tensquare_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
-p 代表端口映射,格式为 宿主机映射端口:容器运行端口
-e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登陆密码
(3)远程登录mysql
连接宿主机的IP ,指定端口为33306
3.2 tomcat部署
(1)拉取镜像
docker pull tomcat:7-jre7
(2)创建容器
创建容器 -p表示地址映射
docker run -di --name=mytomcat -p 9000:8080
-v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7-jre7
3.3 Nginx部署
(1)拉取镜像
docker pull nginx
(2)创建Nginx容器
docker run -di --name=mynginx -p 80:80 nginx
3.4 Redis部署
(1)拉取镜像
docker pull redis
(2)创建容器
docker run -di --name=myredis -p 6379:6379 redis
Docker与容器化-02-与镜像和容器操作相关的命令相关推荐
- 在Docker Hub上你可以很轻松下载到大量已经容器化的应用镜像,即拉即用——daocloud国内镜像加速...
Docker之所以这么吸引人,除了它的新颖的技术外,围绕官方Registry(Docker Hub)的生态圈也是相当吸引人眼球的地方. 在Docker Hub上你可以很轻松下载到大量已经容器化的应用镜 ...
- Docker 制作自定义化的Tomcat镜像
[Docker那些事]系列文章 Dockerfile 文件结构.docker镜像构建过程详细介绍 Dockerfile文件中CMD指令与ENTRYPOINT指令的区别 构建Docker镜像指南,含实战 ...
- window docker 找不到原先所有镜像和容器
有一次我启动docker时,发现里面所有镜像和容器都没有了吓了我一机灵. 突然想起来,我刚启动docker时,docker报错无法启动,我不小心点了Reset to factory defaults. ...
- Docker容器化实战第七课 容器编排Docker Compose、Docker Swarm 和 Kubernetes
19 如何使用 Docker Compoe 解决开发环境的依赖? 前两个模块,我们从 Docker 的基本操作到 Docker 的实现原理,为你一步一步揭开了 Docker 神秘的面纱.然而目前为止, ...
- 微服务容器化运维:微博容器运维平台DCP
微服务容器化运维系列的前两期,我给你详细介绍了微服务容器化后如何运维的几个关键问题:镜像仓库.资源调度.容器调度.服务编排,这些问题的产生都是因为微服务部署的节点从一台台物理机或者虚拟机变成了一个个容 ...
- Docker在官网下载Tomcat镜像里面没有ip addr等命令解决
我们在看狂神说Docker时,在官网pull了Tomcat的镜像,运行命令发现以下报错: [root@centos7 ~]# docker run -d -P --name tomcat01 tomc ...
- virsh命令 查看虚拟机镜像_kvm虚拟机操作相关命令及虚拟机和镜像密码修改
虚拟机生命周期管理 1)查看kvm虚拟机状态 #virsh list --all 2)KVM虚拟机开机 # virsh start oeltest01 3)KVM虚拟机关机或断电 关机 默认情况下vi ...
- Docker安装与镜像,容器命令管理
docker和容器的关系 -Docker是完整的一套容器管理系统 -Docker提供了一组命令, 让用户更加方便直接地使用容器技 术,而不需要过多关心底层内核技术 一.Docker的安装 1.配置环境 ...
- 容器化技术最佳实践1--容器化技术简介与Docker入门
容器化技术最佳实践1–容器化技术简介与Docker入门 文章目录 容器化技术最佳实践1--容器化技术简介与Docker入门 容器化简介 通过虚拟化了解容器化 对开发和运维的好处 容器化部署特点 什么情 ...
- 容器化(docker)
1.什么是容器 有效的将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求. 1.1.容器化与虚拟化 一.容器 容器是一个不依赖于操作系统,运行应用程序的环境. ...
最新文章
- 明年,我要用 AI 给全村写对联
- 取子字符串的两种情形的解决办法(c#)
- Ubuntu 使用Git 使用
- 通俗易懂,带你了解Kafka
- 给Win7光盘添加PE3.0
- Repeater在无数据记录时显示“无相关记录...”
- Golang GOPATH 包
- android Context
- MYSQL DELETE 别名
- git pull因为主线分支问题解决
- Akka边学边写(3)-- ByteString介绍
- 用户登入身份验证,手机app登入身份验证,TokenAuth身份验证,JSON Web Token(JWT)身份验证
- 彩虹自助下单平台对接爱代挂插件程序
- 电商之 团购与B2C模式以及B2B2C模式对比
- #创新应用#豆果美食:贴心的美食专家!
- 双向可控硅晶片光耦 (TLP160J TLP260J TLP525G) 基本原理及应用实例
- nodejs微信公众号开发第一步(接入指南)--wechat模块
- 某某酒店维修工作记录------弱电篇
- Android百度地图绘制多边形,android百度地图:在地图上绘制点、线、多边形、圆形和文字...
- 「游戏」c++ 炸弹人1.0
热门文章
- winform 图片压缩大小为原图的一半_图片压缩指定大小?!这款神奇的工具有必要了解一下...
- 设计模式:JavaScript
- Spring Boot最核心的21个注解
- 从零开始搭二维激光SLAM --- Karto的后端优化与回环检测功能对比测试与分析
- UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xb4 in position 176: in xxxx
- 巨星陨落!图灵奖得主Edmund Clarke感染新冠逝世,教计算机自己检查错误的人走了...
- 数据绑定概述(MSDN)
- eShopOnContainers学习系列(二):数据库连接健康检查
- bzoj 4883 [Lydsy1705月赛]棋盘上的守卫——并查集(思路!)
- PHP随机生成指定时间段的指定个数时间