Docker入门(二):容器与镜像常用指令

零.docker常用命令

#镜像名            版本标签            镜像id             创建时间           镜像大小
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              fce289e99eb9        6 months ago        1.84kB
docker version/info #查看版本/信息
docker --help #查看说明文档
docker logs -f -t --tail 日志条数 容器ID #查看容器日志
docker inspect #获取容器/镜像的元数据

一.镜像基本操作

1. 拉取

docker search [xxx] #查找名为xxx的镜像
docker pull [xxx]:版本号 # 拉取xxx镜像,不加版本号则默认拉取最新版本

2. 查看

docker images -a/-qa #列出本地全部镜像/全部镜像的ID

3. 删除

docker rmi -f [xxx] #删除名为xxx的镜像,加-f为强制删除(不论现在正在运行)
docker rmi $(docker images -q) #删除所有镜像

注意:要拉取的镜像名确认不要写错,否则会报错(repository does not exist or may require ‘docker login‘)

4. 导出镜像

#保存镜像到指定目录
#这里的原image名和版本号需要与要保存的镜像一致
docker save  镜像ID -o d:\dockerimages\新image名.tar 原image名:版本号

5. 导入镜像

#从指定目录加载镜像
docker load -i \dockerimages\新image名.tar

二.容器基本操作

#-i为以交互模式启动容器
#-t为容器重新分配一个伪输入终端(两者合写为-it)
#--name为容器命名,不加则默认自动分配
docker run -it --name mycentos centos

#创建守护式容器
#直接在后台创建一个容器,但是如果容器里没有活动则会在创建后立刻自动停止
docker run -d centos

#8080为docker服务对外暴露的端口,8080指docker内的tomcat端口
docker run -it -p 8080:8080 tomcat

1. 查看

docker ps #查看当前运行的容器
docker ps -l #列出最近创建的容器
docker ps -a #列出当前和曾经运行的容器
docker ps -n x #显示最近运行过的n个容器
#在以上基础上变为 -xq 可以只显示容器编号

#如果找不到命令,则可能为该镜像没有包含procps工具
apt-get update && apt-get install procps

2. 进入

#在已运行的容器中,执行命令,操作对象是容器,如果你要进入已运行的容器,并且执行命令,用exec;
docker exec -it 容器名/容器ID /bin/bash
#同样操作的是已运行的容器,可以将本机标准输入(键盘输入)输到容器中,也可以将容器的输出显示在本机的屏幕上,如果你想查看容器运行过程中产生的标准输入输出,用attach;
docker attach 容器名/容器ID

3. 停止

docker stop 容器名/容器ID #停止单个
docker stop $(docker ps -a -q) #停止全部
docker kill 容器名/容器ID #强制停止

4. 退出

需要注意的是,容器停止后里面的数据就直接销毁了,所有如果没有提交镜像还没有备份,最好不要直接使用exit退出容器

exit #容器停止并退出
ctrl+P+Q #容器不停止退出(非常重要!!!!!!!)

5. 删除

docker rm 容器名/容器ID #删除单个
docker rm $(docker ps -a -q) #删除全部

注意:rm为删除容器,rmi为删除镜像

6. 提交容器

如果想要重复使用当前容器,可以将容器提交成镜像,那样下次使用时就可以直接拉取镜像并启动容器即可

docker commit -m="描述信息" -a="作者" 容器ID 要创建的新镜像名:版本号

7. 从容器中拷贝文件到主机中

顾名思义,将容器中的文件拷贝到主机,如日志或者sql文件

docker cp 容器名/容器ID:文件位置 /root

二点五. docker安装mysql

#获取镜像
docker pull mysql

#启动容器
docker run -it -p 3306:3306 --name mymysql
-v /mydocker/dockersoft/mysqlfile/conf:/etc/mysql/conf.d
-v /mydocker/dockersoft/mysqlfile/logs:/logs
-v /mydocker/dockersoft/mysqlfile/data:/var/lib/mysql
-e MYSQL_ROOT_PASSWORD=123456
-d mysql

#进入容器
docker exec -it mymysql /bin/bash

#查看版本
mysql -v

#以root身份登录
mysql -uroot -p

#选择mysql
use mysql;

#如果navicat远程连接报1521错误
GRANT ALL ON *.* TO 'root'@'%'; #远程连接授权
ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #更改加密规则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; #更改密码
FLUSH PRIVILEGES; #刷新权限

原文地址:https://www.cnblogs.com/Createsequence/p/12344549.html

时间: 2024-12-15 23:54:55

Docker入门(二):容器与镜像常用指令的相关文章

Docker入门二:容器管理

Docker入门二:容器管理 LinuxDocker time: 2019-12-3 容器管理 docker常用命令 注: 命令中的CONTAINER,可以是conainer_id,也可以是container name docker system info # 查看docker系统信息 docker container ls -a 查看当前已经创建的container docker container ls: -a 显示所有容器 -q 仅显示ID -s 显示container的文件大小 快速启动

Docker(二)安装及常用命令

1.安装 1.安装虚拟机VMWare 链接:https://pan.baidu.com/s/1Xl7ENUm2gapPOFs-iXHpRQ 提取码:eubm 2.下载centos,我下的是这个版本的 官网链接: http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1810.iso 注意: Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上. Docker 运行在 C

Angular JS从入门基础 mvc三层架构 常用指令

Angular JS从入门基础  mvc模型 常用指令 ★ 最近一直在复习AngularJS,它是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的是:MVC.模块化.自动化双向数据绑定.语义化标签.依赖注入等等. 1.常用指令 AngularJS 通过指令扩展了HTML,且通过表达式绑定数据到 HTML.下面我们看一下AngularJS中的常用指令. (1).基本概念 指令:AngularJS中,通过扩展HTML的属性提供功能.所以,ng-

走进AngularJs(二) ng模板中常用指令的使用方式

通过使用模板,我们可以把model和controller中的数据组装起来呈现给浏览器,还可以通过数据绑定,实时更新视图,让我们的页面变成动态的.ng的模板真是让我爱不释手.学习ng道路还很漫长,从模板开始入手是个不错方式,因为这部分内容相对简单好理解,而且是视图层的东西,大家都喜欢可以立马看得见的东西嘛.本篇我将搜罗模板中的常用指令一一测试,了解其使用方法,有点像背单词的感觉,会比较枯燥.不过对于初学,这样的枯燥是必须要经历的,开始~ 一.模板中可使用的东西及表达式 模板中可以使用的东西包括以下

docker入门——管理容器

除了交互式的容器(interactive container),我们也可以创建长期运行的容器.守护式容器(daemonized container)没有交互式会话,非常适合运行应用程序和服务.大多数时候我们都需要以守护式来运行我们的容器. 创建守护式容器 # docker run --name daemon_dave -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done" 64b5c862a23cb5b

Docker之二容器管理

Docker 容器 容器是 Docker 又一核心概念. 简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境.对应的,虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和跑在上面的应用. 启动容器 所需要的命令主要为 docker run 如图所示我启动一个容器并执行/bin/ls #dockerrun centos-sshd:v1 /bin/ls sudo docker run -t -i centos-sshd:v1/bin/bash 其中, -t 选项让

Docker入门二

容器管理 1.docker create创建一个容器,但容器并没启动,就和我们创建虚拟机一样,创建了虚拟机后没启动 [[email protected] ~]# docker create -it centos6 bash WARNING: IPv4 forwarding is disabled. Networking will not work. 558e31f7b0fb941ca4ee8c1c2b42553b06ac79c0613984b7ad8b9b4ba97f61fd [[email p

Docker 之 基于容器的镜像制作

1  概述 镜像包含启动容器所需的文件系统和内容,可以理解为打包的文件,用于创建并启动docker容器. 镜像的生成途径有三个: 1.基于dockerfile实现,镜像制作的程序文件 2.基于容器实现,启动容器后,将新的操作制作为新镜像 3.docker hub automated builds 镜像文件采用分层构建机制,最底层为bootfs,上面为rootfs,rootfs上还可以有多层.位于最下层的镜像文件为父镜像(parent image),最底层为基础镜像(base image,root

Docker(6)-修改容器和镜像

虽然我们可以通过数据卷或数据容器来持久化容器中修改的数据,但是对于在容器中安装的软件和修改的环境变量而言,我们只能通过修改镜像的方法来持久化它们. 想要更改镜像,我们必须先对容器进行更改,然后通过commit命令提交到镜像中. 你可以把镜像想像成宫殿,而容器就是门前的守卫,你必须通过他才能进入宫殿. 具体说来,修改镜像的步骤如下: 以我们想要修改的镜像为模版启动一个容器 对容器进行修改 把修改提交的镜像中 例如: 1. 我们以server-light为模版运行一个容器,返回一个可交互的shell