Docker介绍,安装使用(本文废弃太老了)

2024-01-20 03:58

本文主要是介绍Docker介绍,安装使用(本文废弃太老了),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

容器:将软件打包成标准化单元,以用于开发、交付和部署

容器与虚拟机:容器虚拟化的是操作系统而不是硬件,容器之间是共享同一套操作系统资源的。虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统。因此容器的隔离级别会稍低一些。

yum命令在线安装:yum install docker(该命令已经老了,只能拿到1.13版本)

不指定版本就会拿取最新版本

拿最新版本docker      yum -y docker-ce

查看docker版本:docker -v

启动与停止docker

systemctl命令是系统服务docker管理器指令,它是 service 和 chkconfig 两个命令组合。

  1. 启动dockersystemctl start docker
  2. 停止docker:systemctl stop docker
  3. 重启docker:systemctl restart docker
  4. 查看docker状态:systemctl status docker
  5. 开机启动:systemctl enable docker
  6. 查看docker概要信息:docker info
  7. 查看docker帮助文档:docker --help

docker镜像当一个容器启动后,它将会被移动到内存中,而引导文件系统则会被卸载,以留出更多的内存供磁盘镜像使用。Docker容器启动是需要的一些文件,而这些文件就可以称为Docker镜像。

列出docker下的所有镜像:docker images

  1. REPOSITORY:镜像所在的仓库名称
  2. TAG:镜像标签
  3. IMAGE ID:镜像ID
  4. CREATED:镜像的创建日期(不是获取该镜像的日期)
  5. SIZE:镜像大小
  6. 这些镜像都是存储在Docker宿主机的/var/lib/docker目录下

       我们在运行同一个仓库中的不同镜像时,可以通过在仓库名后面加上一个冒号和标签名来指定该仓库中的某一具体的镜像,例如docker run --name custom_container_name –i –t docker.io/ubunto:12.04 /bin/bash,表明从镜像Ubuntu:12.04启动一个容器,而这个镜像的操作系统就是Ubuntu:12.04。在构建容器时指定仓库的标签也是一个好习惯。

收索镜像(网络中查找需要的镜像):docker search 镜像名称

  1. NAME:仓库名称
  2. DESCRIPTION:镜像描述
  3. STARS:用户评价,反应一个镜像的受欢迎程度
  4. OFFICIAL:是否官方

AUTOMATED:自动构建,表示该镜像由Docker Hub自动构建流程创建的

删除镜像

  1. docker rmi $IMAGE_ID:删除指定镜像
  2. docker rmi `docker images -q`:删除所有镜像

Docker容器操作

docker ps                                                          查看正在运行容器

docker ps –a                                                     查看所有的容器(启动过的历史容器)

docker ps –l                                                      查看最后一次运行的容器

docker ps -f status=exited                                查看停止的容器

docker exec -it 775c7c9ee1e1 /bin/bash          进入某个docker,其中775c7c9ee1e1 为docker的id

复制Linux服务器上文件8cd8db034688这个docker:docker cp {113上路径} 8cd8db034688:docker内路径

创建与启动容器

  1. 创建容器常用的参数说明:
  2. 创建容器命令:docker run
  3. -i:表示运行容器
  4. -t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端。
  5. --name :为创建的容器命名。
  6. -v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
  7. -d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-i -t两个参数,创建后就会自动进去容器)。
  8. -p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p做多个端口映射

交互式容器

创建一个交互式容器并取名为mycentos:

docker run -it --name=mycentos centos:7 /bin/bash

这时我们通过ps命令查看,发现可以看到启动的容器,状态为启动状态

使用exit命令 退出当前容器

守护容器(退出时容器不会停止)

创建一个守护式容器:如果对于一个需要长期运行的容器来说,我们可以创建一个守护式容器。命令如下(容器名称不能重复):

docker run -di -name=mycentos6

1.登录守护式容器方式:

docker exec -it container_name (或者 container_id)  /bin/bash(exit退出时,容器不会停止)

2.停止与启动容器

停止正在运行的容器:

docker stop $CONTAINER_NAME/ID

启动已运行过的容器:

docker start $CONTAINER_NAME/ID

文件拷贝

如果我们需要将文件拷贝到容器内可以使用cp命令

docker cp 需要拷贝的文件或目录 容器名称:容器目录

也可以将文件从容器内拷贝出来

docker cp 容器名称:容器目录 需要拷贝的文件或目录docker cp 容器名称:容器目录 需要拷贝的文件或目录

docker cp 容器名称:容器目录 需要拷贝的文件或目录

目录挂载(守护容器)

       我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以通过修改宿主机某个目录的文件从而去影响容器。

创建容器 添加-v参数 后边为   宿主机目录:容器目录

docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7

容名称:容器目录 需要拷贝的文

如果你共享的是多级的目录,可能会出现权限不足的提示。

这是因为CentOS7中的安全模块selinux把权限禁掉了,我们需要添加参数  --privileged=true  来解决挂载的目录没有权限的问题

件或

查看容器IP

我们可以通过以下命令查看容器运行的各种数据

docker inspect mycentos2

也可以直接执行下面的命令直接输出IP地址

docker inspect --format='{{.NetworkSettings.IPAddress}}' mycentos2

录cp器名称:容器目录 需要拷贝的文件或目录

删除容器

删除指定的容器:docker rm $CONTAINER_ID/NAME

注意,只能删除停止的容器

删除所有容器:docker rm `docker ps -a -q`

部署应用

 MySQL部署

拉取MySQL镜像

docker pull mysql

查看镜像 

 创建MySQL容器

docker run -di --name pinyougou_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 代表端口映射,格式为  宿主机映射端口:容器运行端口

-e 代表添加环境变量  MYSQL_ROOT_PASSWORD是root用户的登陆密码

进入MySQL容器,登陆MySQL

进入mysql容器

docker exec -it pinyougou_mysql /bin/bash

登陆mysql:mysql -u root -p

远程登陆Mysql

(1)我们在我们本机的电脑上去连接虚拟机Centos中的Docker容器,这里192.168.247.130是虚拟机操作系统的IP

mysql -u root -p

mysql  -u root -p 

mysqlmysql -u root -p -u root -p 

 mmysql -u root -pysql -u root -p

docker cp 容器名称:容器目录 需要拷贝的文件或目录

docker cp 容器名称:容器目录 需要拷贝的文件或目录cker cp 容器名称:容器目录 需要拷贝的文件或目录

n -di --name=mycentos2 centos:7n -di --name=mycentos2 centos:7ckdodocker run -di --name=mycentos2 centos:7

 docker run docker-di --name=mycentos2 centos:7

docker run -ddodocker run -di --name=mycentos2 centos:7cker run -di --name=mycentos2 centos:7i --name=mycentos2 centos:7

cker run -di --name=mycentos2 centos:7er rdocker run -di --name=mycentos2 centos:7un -di --name=mycentos2 centos:7

docker rudocker run -di --name=mycentos2 centos:7n -di --nametos2 centos:7

这篇关于Docker介绍,安装使用(本文废弃太老了)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/624722

相关文章

Spring IoC 容器的使用详解(最新整理)

《SpringIoC容器的使用详解(最新整理)》文章介绍了Spring框架中的应用分层思想与IoC容器原理,通过分层解耦业务逻辑、数据访问等模块,IoC容器利用@Component注解管理Bean... 目录1. 应用分层2. IoC 的介绍3. IoC 容器的使用3.1. bean 的存储3.2. 方法注

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中注释使用方法举例详解

《Python中注释使用方法举例详解》在Python编程语言中注释是必不可少的一部分,它有助于提高代码的可读性和维护性,:本文主要介绍Python中注释使用方法的相关资料,需要的朋友可以参考下... 目录一、前言二、什么是注释?示例:三、单行注释语法:以 China编程# 开头,后面的内容为注释内容示例:示例:四

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

java实现docker镜像上传到harbor仓库的方式

《java实现docker镜像上传到harbor仓库的方式》:本文主要介绍java实现docker镜像上传到harbor仓库的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 前 言2. 编写工具类2.1 引入依赖包2.2 使用当前服务器的docker环境推送镜像2.2

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

ModelMapper基本使用和常见场景示例详解

《ModelMapper基本使用和常见场景示例详解》ModelMapper是Java对象映射库,支持自动映射、自定义规则、集合转换及高级配置(如匹配策略、转换器),可集成SpringBoot,减少样板... 目录1. 添加依赖2. 基本用法示例:简单对象映射3. 自定义映射规则4. 集合映射5. 高级配置匹

Spring 框架之Springfox使用详解

《Spring框架之Springfox使用详解》Springfox是Spring框架的API文档工具,集成Swagger规范,自动生成文档并支持多语言/版本,模块化设计便于扩展,但存在版本兼容性、性... 目录核心功能工作原理模块化设计使用示例注意事项优缺点优点缺点总结适用场景建议总结Springfox 是