最简洁的Docker环境配置

news2024/11/24 1:20:24

Docker环境配置

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Mac、Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。总之它加快构建、共享和运行现代应用程序的速度。

  1. 官网:https://www.docker.com - Mac、Windows、Linux

1.本地安装

在这里插入图片描述

安装完成后,按照自己的机器配置一个适合的空间占用。

在这里插入图片描述

  1. 安装后,可以在 Docker 的操作界面拉取镜像、推送镜像、部署程序等
  2. 安装后,还可以在黑窗口终端、IDEA Terminal 中使用 Docker 命令,操作 Docker,如服务部署。

2.命令安装

按照步骤,一条条执行,即可在云服务器安装一个 Docker 容器了。

1. 查看系统的内核版本

[root@CodeGuide ~]# uname -r
4.18.0-80.11.2.el8_0.x86_64
  • uname -r

  • x86 64位系统,如果是32位是不能安装 docker 的

2. yum 更新到最新版本

[root@CodeGuide ~]# sudo yum update

Last metadata expiration check: 1:15:10 ago on Sat 27 Nov 2021 04:22:53 PM CST.
Dependencies resolved.
Nothing to do.
Complete!
  • sudo yum update
  • 看到显示 Complete 就代表完成了,整个过程需要 5-10 分钟左右

3. 安装Docker所需的依赖包

[root@CodeGuide ~]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Last metadata expiration check: 1:16:16 ago on Sat 27 Nov 2021 04:22:53 PM CST.
Package yum-utils-4.0.21-3.el8.noarch is already installed.
Package device-mapper-persistent-data-0.9.0-4.el8.x86_64 is already installed.
Package lvm2-8:2.03.12-10.el8.x86_64 is already installed.
Dependencies resolved.
Nothing to
  • sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  • 看到显示 Complete 就代表完成了,整个过程需要 1-3 分钟左右

4. 设置Docker的yum的源

[root@CodeGuide ~]# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
  • sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  • 鉴于国内网络问题,强烈建议使用国内源。以下是阿里云的软件源。如果是海外如AWS云就不要设置yum源
sudo yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

5. 查看仓库所有Docker版本

[root@CodeGuide ~]# yum list docker-ce --showduplicates | sort -r
Installed Packages
docker-ce.x86_64               3:20.10.9-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.8-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.7-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.6-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.5-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.4-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.3-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.2-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.1-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:20.10.11-3.el8                docker-ce-stable 
docker-ce.x86_64               3:20.10.11-3.el8                @docker-ce-stable
docker-ce.x86_64               3:20.10.10-3.el8                docker-ce-stable 
docker-ce.x86_64               3:20.10.0-3.el8                 docker-ce-stable 
docker-ce.x86_64               3:19.03.15-3.el8                docker-ce-stable 
docker-ce.x86_64               3:19.03.14-3.el8                docker-ce-stable 
docker-ce.x86_64               3:19.03.13-3.el8                docker-ce-stable 
Docker CE Stable - x86_64                       7.1 kB/s | 3.5 kB     00:00    
Available Packages
  • yum list docker-ce --showduplicates | sort -r
  • 这里可以看到你能安装的最新版本

6. 安装Docker

[root@CodeGuide ~]# sudo yum install docker
安装默认最新版本的 Docker
[root@CodeGuide ~]# sudo yum install <FQPN>

​ 安装指定版本,例如:sudo yum install docker-ce-20.10.11.ce

7. 启动Docker并添加开机自启动

[root@CodeGuide ~]# sudo systemctl start docker

​ 启动 Docker

[root@CodeGuide ~]# systemctl enable docker

​ 设置开机启动 Docker

8. 查看 Docker 版本

[root@CodeGuide ~]# docker --version
Docker version 20.10.11, build dea9396

9. 卸载 Docker

[root@CodeGuide ~]# sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

10. Docker 常用命令

[root@CodeGuide ~]# docker --help    #Docker帮助
[root@CodeGuide ~]# docker --version   #查看Docker版本
[root@CodeGuide ~]# docker search <image>  #搜索镜像文件,如:docker search mysql
[root@CodeGuide ~]# docker pull <image>  #拉取镜像文件, 如:docker pull mysql
[root@CodeGuide ~]# docker images    #查看已经拉取下来的所以镜像文件
[root@CodeGuide ~]# docker rmi <image>  #删除指定镜像文件
[root@CodeGuide ~]# docker run --name <name> -p 80:8080 -d <image>  #发布指定镜像文件
[root@CodeGuide ~]# docker ps     #查看正在运行的所有镜像
[root@CodeGuide ~]# docker ps -a    #查看所有发布的镜像
[root@CodeGuide ~]# docker rm <image>   #删除执行已发布的镜像

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1589101.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

YOLOv8打印模型结构配置信息并查看网络模型详细参数:参数量、计算量(GFLOPS)

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

docker-compose yaml指定具体容器网桥ip网段subnet

docker-compose 启动yaml有时可能的容器网段与宿主机的ip冲突导致宿主机上不了网&#xff0c;这时候可以更改yaml指定subnet 宿主机内网一般是192**&#xff0c;这时候容器可以指定172* version: 3.9 services:coredns:image: coredns/coredns:1.10.0container_name: coredns…

【面试必备】MySQL索引是什么?怎么设计索引?

在后端面试中&#xff0c;MySQL的索引是一个常见问题&#xff0c;尤其是最近掀起了去Oracle的风向。作为一个很宽泛的面试题&#xff0c;不仅考验对MySQL整体知识的了解&#xff0c;也方便面试官随着我们的回答逐渐往下延伸问题。众所周知&#xff0c;面试问题的答案&#xff0…

【力扣题】关于单链表和数组习题

&#x1f308; 个人主页&#xff1a;白子寰 &#x1f525; 分类专栏&#xff1a;python从入门到精通&#xff0c;魔法指针&#xff0c;进阶C&#xff0c;C语言&#xff0c;C语言题集&#xff0c;C语言实现游戏&#x1f448; 希望得到您的订阅和支持~ &#x1f4a1; 坚持创作博文…

使用MATLAB的cylinder函数生成圆柱体及其他应用

cylinder 函数是 MATLAB 中的一个内置函数&#xff0c;用于生成表示圆柱体表面的坐标点。这些坐标点可以用于绘制三维图形&#xff0c;如使用 surf 或 mesh 函数进行可视化。 cylinder函数生成单位圆柱体的x、y和z坐标。您可以使用surf或mesh来绘制圆柱形对象&#xff0c;或者…

1233. 全球变暖---BFS

目录 1233. 全球变暖 输入格式 输出格式 数据范围 输入样例1&#xff1a; 输出样例1&#xff1a; 输入样例2&#xff1a; 输出样例2&#xff1a; 思路&#xff1a; 宽搜BFS 模板&#xff1a; 代码&#xff1a; 运行结果&#xff1a; 1233. 全球变暖 你有一张某海域 NN…

Mongo 报错 Can‘t canonicalize query: BadValue $in needs an array

一、遇到的问题 Mongo in查询 [ UserId > array($in>$userIds)] $userIds数组不是连续索引&#xff0c;报错Cant canonicalize query: BadValue $in needs an array 二、解决 array_values($userIds) 重新索引一下变成连续索引即可。 Mongo in查询的数组要是连续索…

WEB3.0:互联网的下一阶段

随着互联网的发展&#xff0c;WEB3.0时代正在逐步到来。本文将深入探讨WEB3.0的定义、特点、技术应用以及未来展望&#xff0c;为读者带来全新的思考。 一、什么是WEB3.0&#xff1f; WEB3.0可以被理解为互联网发展的下一阶段&#xff0c;是当前WEB2.0的升级版。相较于2.0时代…

react状态管理库---zustand

一个简单的&#xff0c;快速的状态管理解决方案&#xff0c;api设计基于函数式和hooks 安装&#xff1a; npm install zustand 基础使用 让我们实现一个非常简单的计数器案例完成我们的第一个store 1- 创建一个counterStore create( ) 有三个参数&#xff1a;函数、布尔值…

[C++][算法基础]模拟散列表(哈希表)

维护一个集合&#xff0c;支持如下几种操作&#xff1a; I x&#xff0c;插入一个整数 x&#xff1b;Q x&#xff0c;询问整数 x 是否在集合中出现过&#xff1b; 现在要进行 N 次操作&#xff0c;对于每个询问操作输出对应的结果。 输入格式 第一行包含整数 N&#xff0c;…

类和对象【一】类和对象简介

文章目录 C的类与C语言结构体的区别【引入类】类的定义类体中的成员函数的实现类中的访问限定符C中class和struct的区别 类的作用域类的实例化类中成员的存储位置类的大小 C的类与C语言结构体的区别【引入类】 类里面不仅可以定义变量还可以定义函数 例 类具有封装性【将在该…

c++ 指针总结

概述 内存地址 在计算机内存中&#xff0c;每个存储单元都有一个唯一的地址(内存编号)。通俗理解&#xff0c;内存就是房间&#xff0c;地址就是门牌号 指针和指针变量 指针&#xff08;Pointer&#xff09;是一种特殊的变量类型&#xff0c;它用于存储内存地址。指针的实质…

libcurl 简单实用

LibCurl是一个开源的免费的多协议数据传输开源库&#xff0c;该框架具备跨平台性&#xff0c;开源免费&#xff0c;并提供了包括HTTP、FTP、SMTP、POP3等协议的功能&#xff0c;使用libcurl可以方便地进行网络数据传输操作&#xff0c;如发送HTTP请求、下载文件、发送电子邮件等…

【Linux】UDP编程【上】{诸多编程接口/小白入门式讲解}

文章目录 0.预备知识0.1套接字0.2TCP/UDP0.3大小端问题 1.socket 常见API1.1socket1.2各个接口1.3int bind();1.3网络头文件四件套1.4bzero1.5recvfrom1.6sendto() 2.UDP编程2.1服务器编程2.2客户端编程2.3运行测试2.3.1本机通信2.3.2popen2.3.3strcasestr2.3.4回顾C11智能指针…

dfs板子

递归实现排列 留着明早省赛之前看 #include<iostream> using namespace std; int arr[10010]; int brr[10010]; int n,k; void dfs(int num){if(num > n){for(int i 1;i < n;i){cout << arr[i] << " ";}cout << endl;return;}for(in…

mysql题目2

tj11: select sex,count(sex) from t_athletes group by sex; tj12: select name 姓名,TIMESTAMPDIFF(year,birthday,2024-1-1) 年龄 from t_athletes tj13: SELECT * FROM t_athletesWHERE id NOT IN (SELECT aid FROM t_match WHERE sid IN (SELECT id FROM t_sport WHE…

python 的join函数

join函数是一个对字符串处理的函数 字符串.join(str)的含义是把字符串加入到str的每一个间隙里面 如 str1234 ,.join(str) #打印的结果为 1,2,3,4

C语言处理文本模板:格式信函编程

开篇 本篇文章的问题来源为《编程珠玑》第3章其中一个问题&#xff0c;格式信函编程。说白了就是先在文件中定义一个文本模版&#xff0c;然后使用数据库中的数据去填充这个模版&#xff0c;最后得到填充后的文本&#xff0c;并输出。 问题概要 在常去的网店键入你的名字和密码…

动态规划先导片

大家知道动规是由前一个状态推导出来的&#xff0c;而贪心是局部直接选最优的&#xff0c;对于刷题来说就够用了。 对于动态规划问题&#xff0c;我将拆解为如下五步曲&#xff0c;这五步都搞清楚了&#xff0c;才能说把动态规划真的掌握了&#xff01; 确定dp数组&#xff0…

SaaS知识库工具是真的方便,各大企业都在用

你可能听说过“SaaS”&#xff0c;但你是否真的知道它是什么以及它是如何工作的&#xff1f;简单来说&#xff0c;SaaS&#xff08;Software as a Service&#xff09;意味着以服务的形式提供软件&#xff0c;这是一种在线订阅并通过互联网使用软件的方式。放心&#xff0c;听起…