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

相关文章

SpringBoot中使用Flux实现流式返回的方法小结

《SpringBoot中使用Flux实现流式返回的方法小结》文章介绍流式返回(StreamingResponse)在SpringBoot中通过Flux实现,优势包括提升用户体验、降低内存消耗、支持长连... 目录背景流式返回的核心概念与优势1. 提升用户体验2. 降低内存消耗3. 支持长连接与实时通信在Sp

python使用库爬取m3u8文件的示例

《python使用库爬取m3u8文件的示例》本文主要介绍了python使用库爬取m3u8文件的示例,可以使用requests、m3u8、ffmpeg等库,实现获取、解析、下载视频片段并合并等步骤,具有... 目录一、准备工作二、获取m3u8文件内容三、解析m3u8文件四、下载视频片段五、合并视频片段六、错误

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

使用Python和OpenCV库实现实时颜色识别系统

《使用Python和OpenCV库实现实时颜色识别系统》:本文主要介绍使用Python和OpenCV库实现的实时颜色识别系统,这个系统能够通过摄像头捕捉视频流,并在视频中指定区域内识别主要颜色(红... 目录一、引言二、系统概述三、代码解析1. 导入库2. 颜色识别函数3. 主程序循环四、HSV色彩空间详解

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

Python常用命令提示符使用方法详解

《Python常用命令提示符使用方法详解》在学习python的过程中,我们需要用到命令提示符(CMD)进行环境的配置,:本文主要介绍Python常用命令提示符使用方法的相关资料,文中通过代码介绍的... 目录一、python环境基础命令【Windows】1、检查Python是否安装2、 查看Python的安