1.docker-安装及使用

news/2024/5/19 6:12:19/

1.安装步骤

Install Docker Engine on CentOS

1. 确定CenOS7及以上版本

cat /etc/redhat-release

2.卸载旧版本

yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine

3.yum安装gcc相关

yum -y install gccyum -y install gcc-c++

4.安装所需软件包

yum install -y yum-utils

5.设置stable镜像仓库

yum-config-manager \--add-repo \https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6.更新yum软件包索引

yum makecache fast

7.安装DOCKER CE

yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

8.查看docker版本

docker -v
# 或
docker version

9.启动docker

# 启动之前关闭防火墙
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld# 启动docker服务 
systemctl start docker

10.测试

docker run hello-world

11.卸载

systemctl stop dockeryum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extrasrm -rf /var/lib/dockerrm -rf /var/lib/containerd

12.配置阿里云镜像加速

前往 容器镜像服务 (aliyun.com) 进入容器镜像服务,获取自己的容器镜像服务加速地址

gva3wer54hu5retw6gshws4u

mkdir -p /etc/dockertee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://你自己的.mirror.aliyuncs.com"]
}
EOFsystemctl daemon-reloadsystemctl restart docker

拉取镜像会报错,出现此问题的原因为未进行身份识别 ,前往个人实例 中找到 访问凭证,先设置登录密码再执行命令

image-20230328113053676

image-20230328113540321

2.docker命令

1.帮助启动类命令

1.启动

systemctl start docker

2.停止

systemctl stop docker

3.重启

systemctl restart docker

4.查看状态

systemctl status docker

5.查看版本

docker -v
# 或
docker version

6.开机启动

systemctl enable docker

7.查看概要信息

docker info

8.查看总体帮助文档

docker --help

9.查看命令帮助文档

docker 具体命令 --help

2.镜像命令

1.列出本地主机上的镜像

  • REPOSITORY 镜像的数据源

  • TAG 镜像的标签版本号

  • IMAGE ID 镜像ID

  • CREATED 镜像创建的时间

  • SIZE 镜像大小

docker images-a :列出本地所有的镜像(含历史映像层)
docker images -a-q :只显示镜像ID
docker images -q

2.搜索镜像

docker search 镜像名字# 只列举出n个镜像,默认25个
docker search 镜像名字 --limit
docker search 镜像名字 --limit n# 查找关注度大于n的某个镜像
docker search --filter=stars=n 镜像名称     

3.拉取镜像

docker pull 某个镜像名字# 拉取某个镜像最新版
docker pull 某个镜像名字 latest# 镜像可能有多个TAG版本,拉取指定TAG版本镜像,没有就是最新版
docker pull 某个镜像名字:TAG

4.查看镜像/容器/数据卷所占用的空间

docker system df 

5.删除镜像

docker rmi 容器Id或容器名称# 强制删除
docker rmi -f 容器Id或容器名称# 同时删除多个镜像
docker rmi -f 名字/ID1 名字/ID2 名字/ID3 ...# 删除全部镜像
docker rmi -f $( docker images -qa )

3.容器命令

1.新建+启动命令

  • –name=“容器新名字” 为容器指定一个名称;

  • -d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行);

  • -i:以交互模式运行容器,通常与 -t 同时使用;

  • -t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;启动交互式容器(前台有伪终端,等待交互);

  • -P: 随机端口映射,大写P

  • -p: 指定端口映射,小写p

xxx

# 以交互模式启动容器,交互式Shell,使用/bin/bash,要退出终端直接输入 exit
docker run -it 容器名称 /bin/bash
# -docker run -it centos /bin/bash 
# -docker run -it ubuntu /bin/bash # 别名
docker run -it --name=别名 容器Id或容器名称

2.列出当前所有正在运行的容器

docker ps# 列出当前所有正在运行的容器+历史上运行过的
docker ps -a# 显示最近创建的容器# 显示最近n个创建的容器
docker ps -n 个数# 静默模式,只显示容器编号
docker ps -q

4.退出容器

# 退出容器停止 
exit# 退出容器不停止 
ctrl + P + Q
Ctrl + Shift + P + Q

5.启动已停止运行的容器

docker start 容器Id或容器名称

6.重启容器

docker restart 容器Id或容器名称

7.停止容器

docker stop 容器Id或容器名称

8.强制停止容器

docker kill 容器Id或容器名称

9.删除已停止的容器

docker rm 容器Id或容器名称# 同时删除多个
docker rm -f $( docker ps -a -q )

10.以守护方式启动容器[后台]

docker ps查看一下启动成功与否,有的容器后台运行必须有一个前台进程,比如ubuntu,要使用命令docker run -it ubuntu,而redis则可以直接后台运行

容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就会自动退出的

docker run -d 容器Id或容器名称 [并返回容器ID]

11.查看容器日志

docker logs 容器Id# 查看redis容器日志,参数:-f  跟踪日志输出;-t   显示时间戳;--tail  仅列出最新N条容器日志;
docker logs -f -t --tail=n 容器Id或容器名称# 查看容器从某时间后的最新n条日志。
docker logs --since="xxxx-xx-xx" --tail=n 容器Id或容器名称

12.查看容器进程

# 所有
docker ps# 指定
docker top 容器Id

13.查看容器详细信息

docker inspect 容器Id或容器名称

14.进入正在运行的容器并以命令行交互

# exec 是在容器中打开行的容器,可以启动新的进程,用 exit 退出不会导致容器的停止   [推荐使用]
docker exec -it 容器id /bin/bash    [或 bashShell]# attach 直接进入容器启动命令的终端,不会启动新的进程,用 exit 会导致容器的停止
docker attach 容器id /bin/bash  [或 bashShell]

15.从容器内拷贝文件到主机上

docker cp  容器ID:容器内路径 目的主机路径# [root@07ea64240119] @ 后为容器ID

16.导入与导出

# 导入
cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号# 导出
docker export 容器ID > 文件名.tar

17.commit编辑操作

docker commit提交一个新的容器副本使之成为一个新的镜像,类似于java反射

# 获取容器ID,运行 docker ps 查看容器ID
docker ps
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]# ubuntu安装vim
apt-get update
apt-get -y install vim

18.删除本地无用镜像

docker system prune

19.从文件载入镜像

docker load -i imageName.tar

http://www.ppmy.cn/news/46823.html

相关文章

HuggingGPT强势来袭,LLM+专家模型,迈向更通用的AI

出品人&#xff1a;Towhee 技术团队 超级组合&#xff1a;HuggingFace ChatGPT HuggingGPT强势来袭。人类仿佛距离真正的AGI又更近了一步。 HuggingGPT是浙江大学与微软亚洲研究院的联手研究&#xff0c;发布之后迅速引发关注&#xff0c;已经开源。 它的使用非常简单&#x…

【密码学复习】第六讲 HASH函数和MAC(三)

H是一个Hash函数 K表示密钥 B表示计算消息摘要时消息分块的字节长度&#xff08;对MD5和SHA-1是512比特,64字节&#xff09; L表示消息摘要按字节计算的长度&#xff08;对MD5是16字节&#xff09; ipad表示0x36重复B次&#xff0c;opad表示0x5c重复B次。 K可以…

有关WPF的一些事

RaisePropertyChanged和OnPropertyChanged的区别 WPF中&#xff0c;数据绑定是实现MVVM模式的关键。在数据绑定的过程中&#xff0c;我们需要在数据发生变化时及时通知UI更新。为了实现这个功能&#xff0c;WPF提供了两个重要的方法&#xff1a;WPFRaisePropertyChanged和OnPr…

逆向-还原代码之(*point)[4]和char *point[4] (Interl 32)

// source code #include <stdio.h> #include <string.h> #include <stdlib.h> /* * char (*point)[4] // 数组指针。 a[3][4] // 先申明二维数组,用它来指向这个二维数组 * char *point[4] // 指针数组。 a[4][5] // 一连串的指针…

flac格式如何转换为mp3,这3个方法超好用

随着音频格式的不断创新和发展&#xff0c;每种格式对应不同的特点。比如像flac格式可以提供无损音质的体验&#xff0c;但它的文件大小却是相对较大&#xff0c;不太适合在普通设备上进行传输和使用。而mp3作为一种流行的音频格式&#xff0c;它的压缩率较高&#xff0c;不但可…

mysql安装(1)

下载软件包 解压tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz mv mysql-5.7.28-linux-glibc2.12-x86_64 /usr/local/mysql 创建相关目录 mkdir /home/storage/mysql_3306/data logs run tmp 创建用户 groupadd mysql useradd -r -g mysql -s /bin/false mysql 修…

病毒丨3601lpk劫持病毒分析

作者&#xff1a;黑蛋 一、病毒简介 文件名称&#xff1a; 1f3e836b4677a6df2c2d34d3c6413df2c5e448b5bc1d5702f2a96a7f6ca0d7fb 文件类型(Magic)&#xff1a; PE32 executable (GUI) Intel 80386, for MS Windows 文件大小&#xff1a; 52.50KB SHA256&#xff1a; 1f3e836b4…

以 Wow 插件抛砖引玉,如何进行简单的游戏翻译工作

文章目录 前情提要WA例子翻译思路1. 找到需要翻译的关键信息2. 如果需要的话&#xff0c;先机翻减少工作量3. 人工核对检查和修改 结果展示 前情提要 魔兽世界美服10.1更新在即&#xff0c;刚刚来到美服的朋友需要用到一些插件&#xff0c;很多是没有汉化版本的&#xff0c;我…

计算机图形学 | 实验五:模型导入

计算机图形学 | 实验五&#xff1a;模型导入 计算机图形学 | 实验五&#xff1a;模型导入模型加载库AssimpAssimp简介Assimp构建 Mesh && Model 类的创建MeshModel 绘制模型 华中科技大学《计算机图形学》课程 MOOC地址&#xff1a;计算机图形学&#xff08;HUST&…

[Daimayuan] 子串的循环挪动(C++,模拟)

给出一个字符串 s s s&#xff0c;你需要执行 m m m 个任务。每个任务给出两个下标 l i , r i l_i,r_i li​,ri​ 和一个整数 k i k_i ki​&#xff08;字符串的下标从 1 1 1 开始&#xff09;&#xff0c;表示你需要循环挪动 s s s 的子串 s [ l i . . . r i ] k i s[l…

生产制造企业如何建立适合自身的数字化工厂,实现数字化转型?

“工业4.0”这一全新的术语受到全球的瞩目&#xff0c;它是继机械化、电气化和信息技术之后&#xff0c;以智能制造为核心的第四次工业革命。“工业4.0”最显著的特征是智能工厂的广泛普及。而智能工厂是在数字化工厂的基础上发展而来的&#xff0c;没有数字化就没有智能化。因…

无需公网IP,远程连接SQL Server数据库【内网穿透】

文章目录 1.前言2.本地安装和设置SQL Server2.1 SQL Server下载2.2 SQL Server本地连接测试2.3 Cpolar内网穿透的下载和安装2.3 Cpolar内网穿透的注册 3.本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4.公网访问测试5.结语 1.前言 数据库的重要性相信大家都有所了解&…

仿真创新大赛—国三省一 智能鱼缸(proteus)(stm32)

⏩ 大家好哇&#xff01;我是小光&#xff0c;嵌入式爱好者&#xff0c;一个想要成为系统架构师的大三学生。 ⏩去年下半年参加了全国仿真创新大赛&#xff0c;也是取得了国赛三等奖&#xff0c;省赛一等奖的好成绩。 ⏩本篇文章对我们的参赛作品《智能鱼缸》做一个简介。 ⏩感…

软件测试——概念篇

目录 一、软件的生命周期 二、瀑布模型&#xff08;Waterfall Model&#xff09; 优点&#xff1a; 缺点&#xff1a; 三、螺旋模型&#xff08;Spiral Model&#xff09; ​编辑优点&#xff1a; 缺点&#xff1a; 四、增量、迭代 区别&#xff1a; 五、敏捷 scrum…

滚动条如何设置样式和滚动条悬浮显示与隐藏

文章目录 一、滚动条如何设置样式1&#xff1a;滚动条的默认样式&#xff08;如下图&#xff09;1&#xff1a;html代码2&#xff1a;css代码3&#xff1a;效果图 2&#xff1a;CSS设置滚动条的属性&#xff08;重点&#xff09;3&#xff1a;设置滚动条的例子1&#xff1a;css…

【Unity+MySQL】实现注册登录系统(升级版)

目录 1 UI界面重新设计1.1 注册界面1.2 登录界面1.3 交互实现 2 注册功能完善2.1 判断用户输入的用户名是否与数据库中的重复2.2 将当前时间更新至用户表的当前注册时间列2.3 将用户输入的注册密码使用哈希加密 3 登录功能完善4 总体功能流程图 接着 上篇文章所谈到的系统缺陷…

如何招生?一文教你高职院校有效的招生技巧

生源&#xff0c;是每一所高校的生存之本和生命线。 近几年招生宣传工作作为高职院校招生工作中的重要环节之一&#xff0c;具有政策性强&#xff0c;涉及面广&#xff0c;工作量大等特点&#xff0c;直接关系到学校可持续发展问题。 随着新媒体时代的发展&#xff0c;高职院…

深度学习中的卷积神经网络

博主简介 博主是一名大二学生&#xff0c;主攻人工智能研究。感谢让我们在CSDN相遇&#xff0c;博主致力于在这里分享关于人工智能&#xff0c;c&#xff0c;Python&#xff0c;爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主&#xff0c;博主会继续更新的&#xff0c…

Mysql安装详细教程

数据库相关概念 而目前主流的关系型数据库管理系统的市场占有率排名如下&#xff1a; Oracle&#xff1a;大型的收费数据库&#xff0c;Oracle公司产品&#xff0c;价格昂贵。 MySQL&#xff1a;开源免费的中小型数据库&#xff0c;后来Sun公司收购了MySQL&#xff0c;而Oracle…

Netty Jemalloc4算法-核心数据结构图示

Netty 从4.1.52版本开始&#xff0c;其内存分配算法&#xff0c;从jemalloc3 切换到了 jemalloc4。本文给出该算法涉及的核心数据结构图示&#xff1a; 想要看懂上图, 要点如下&#xff1a; 1. 小于等于16777216字节的空间&#xff0c;从chunk(一个16M的字节数组)中分配&#…