linux中docker的安装教程

下面就为您详细讲解 "Linux中Docker的安装教程"。

1. 安装前的准备

在安装Docker之前,需要确保您的Linux系统版本符合下列要求:

  • CentOS:7 or later
  • Debian:Wheezy or later
  • Fedora:21 or later
  • Ubuntu:Trusty Tahr 14.04 or later
  • RHEL:7 or later

还需确保您已经安装了curl工具。如果您的系统里还没有curl,您可以通过以下的命令进行安装:

sudo apt-get install curl

2. Docker安装过程

  1. 卸载旧版本的Docker
    如果您已经在您的电脑上安装了旧版本Docker,为避免出错和影响安装,您需要先卸载掉旧版本的Docker,命令如下:
sudo apt-get remove docker docker-engine docker.io
  1. 安装Docker CE

Docker CE是Docker Community Edition的简称,这也是Docker涉及到的非企业级别操作的而版本。确保依赖关系可用:

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
  1. 安装GPG密钥:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. 添加Docker repository
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

如果出现:

add-apt-repository: command not found

请先使用下列代码安装软件:

sudo apt-get install software-properties-common | dnf install -y software-properties-common
  1. 安装Docker
sudo apt-get update
sudo apt-get install docker-ce
  1. 确认Docker已经成功安装

您可以通过以下的命令来运行一个简单的Docker镜像,确认Docker已经成功安装:

sudo docker run hello-world

3. 操作Docker(包含两个示例)

示例1:运行一个基础镜像

Docker有许多预设的镜像,可以直接在Docker Hub(镜像仓库)里下载。接下来,我们以CentOS的官方Docker镜像为例,来运行一个基础镜像。

  1. 从Docker Hub下载CentOS镜像
sudo docker pull centos

注意:在中国下载Docker Hub的镜像速度会非常慢,如果您遇到这个问题,可以考虑使用阿里云的Docker Hub镜像。

```bash
sudo docker pull registry.cn-hangzhou.aliyuncs.com/library/centos


2. 运行CentOS镜像

```bash
sudo docker run -i -t centos /bin/bash

命令参数说明:

  • -i:表示以交互式运行Docker,可在终端上进行输入输出操作
  • -t:表示在新容器内开启一个伪终端,同时将其绑定到以下命令行。
  • centos:表示要运行centos镜像
  • /bin/bash:表示在新容器内执行bash命令。

  • 查看正在运行的容器

sudo docker ps -a

您还可以通过以下命令列出所有镜像,以及运行状况:

sudo docker images -a

示例2:创建一个自定义镜像

除了使用Docker Hub里的预设镜像,我们还可以通过自己编写的Dockerfile文件,来定制一个适合自己的Docker镜像。接下来我们就从头开始创建一个自定义镜像。

  1. 创建一个Dockerfile文件

在一个新的文件夹里创建一个名为Dockerfile的文件,并把以下代码填入文件中:

FROM ubuntu
MAINTAINER AAA
RUN apt-get update && apt-get install -y apache2 && apt-get clean &&\
      echo "ServerName localhost" | tee /etc/apache2/conf-available/fqdn.conf &&\
      a2enconf fqdn &&\
      sed -i 's/Listen 80/Listen 8080/g' /etc/apache2/ports.conf &&\
      sed -i 's/\/var\/www\/html/\/var\/www\/web/g' /etc/apache2/sites-available/000-default.conf &&\
      echo "<html><body><h1>Hello!</h1></body></html>" > /var/www/web/index.html
EXPOSE 8080
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]

上述文件中,代码首先是第一条可能是最重要的编译指令。它确定我们打算制作的镜像从哪个基础镜像开始。在本例中,从Ubuntu官方第一方镜像开始。我们需要的应用是apache2,因此在RUN指令中将其安装,并通过诸如echo之类的解决方案设置默认值。

  1. 通过Dockerfile文件,生成自定义镜像

确保您已经在Dockerfile所在的文件夹内,然后输入以下代码语句:

sudo docker build -t my-apache2 .
  1. 运行自定义镜像

输入以下代码语句,完成镜像的运行。

sudo docker run -p 8080:8080 my-apache2

命令参数说明:

  • -p:表示在Docker容器和宿主机之间建立端口映射,格式为[宿主机端口]:[Docker内部端口]。本例中,我们将Docker内部的8080端口映射到宿主机的8080端口。
  • my-apache2:表示我们需要运行的自定义镜像名。

  • 查看正常运行的容器

可以运行以下命令,查看正在运行的容器:

sudo docker ps

总结

Linux中安装Docker CE的过程相对简单,只需要准备好Linux的环境和依赖关系即可。安装完成之后,我们可以通过运行一个基础镜像和创建一个自定义镜像的示例,进一步熟悉Docker的使用。如果您想要深入学习Docker,可以访问Docker官网的学习文档。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux中docker的安装教程 - Python技术站

(0)
上一篇 2023年5月16日
下一篇 2023年5月16日

相关文章

  • 大规模 IoT 边缘容器集群管理的几种架构-4-Kubeedge

    前文回顾 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介 大规模 IoT 边缘容器集群管理的几种架构-1-Rancher+K3s 大规模 IoT 边缘容器集群管理的几种架构-2-HashiCorp 解决方案 Nomad 大规模 IoT 边缘容器集群管理的几种架构-3-Portainer ?️Reference:IoT 边缘计算系列文章 K…

    2023年4月9日
    00
  • Docker: dockerfile常用关键字

    Dockerfile指令 Dockfile执行和shell命令一行,一行一行执行~ 写Dockerfile注意点: 1.           尽量少RUN 2.           多个命令拼接在一起 3.           清理部署垃圾 下面是一个构建一个tomcat的dockerfile    FROM centos:7 MAINTAINER 容器学院…

    Docker 2023年4月11日
    00
  • 32) Docker常见故障

    Docker虚拟化主要有三类故障: 应用故障:应用执行状态与预期不一致。 容器故障:无法正确创建、停止、更新容器等。 集群故障:集群创建失败、更新失败、无法连接等。 1.1- Docker虚拟化故障排错 所有的Docker虚拟化故障排查诊断,都可以通过Docker命令行工具或者Web控制台【需要自建控制台】来完成。 2- 案例 2.1- 案例1 全新安装的D…

    Docker 2023年4月13日
    00
  • jenkins部署docker

    1. 先在jenkins上配置拉取代码部分,需要在git上找到项目位置,直接复制url即可 http://192.168.0.161:3000/IT-Insurance/Back.Test-Walle 选择git的凭据 #不报错即可 2. 可以先跑一下jenkins,看看代码是否拉取正常,执行命令,编译打包 cd /root/.jenkins/workspa…

    Docker 2023年4月13日
    00
  • DELPHI开始支持LINUX DOCKER

    DELPHI开始支持LINUX DOCKER 本方翻译自Marco Cantu的文章。 在过去的几年中,将服务器端解决方案(实际上是任何类型的应用程序)部署到轻量级容器而不是物理机器或虚拟机已经变得越来越普遍,因为这允许更大的灵活性(在测试方面),更好地重建相同的执行环境,以及更大的可扩展性。 随着10.3.3版本的发布,Embarcadero正式开始支持将…

    Docker 2023年4月11日
    00
  • 解决docker与vmware的冲突问题

    解决 Docker 与 VMware 的冲突问题,需要经过以下几步: 1. 确认是否存在冲突 首先在使用前,我们需要确认是否存在冲突,可以输入以下命令查看当前是否存在已经启动的 vmware 大写堆栈: lsmod | grep -i vmw 如果输出了类似 vmw_vsock_vmci_transport 或者 vmw_vmci 的关键词,则说明存在已经启…

    Docker 2023年5月16日
    00
  • Grafana 系列文章(十三):如何用 Loki 收集查看 Kubernetes Events

    前情提要 IoT 边缘集群基于 Kubernetes Events 的告警通知实现 IoT 边缘集群基于 Kubernetes Events 的告警通知实现(二):进一步配置 概述 在分析 K8S 集群问题时,Kubernetes Events 是超级有用的。 Kubernetes Events 可以被当做是日志来处理,格式也和日志很像,都包括: 时间 组件…

    2023年4月10日
    00
  • 详解Docker私有仓库最简便的搭建方法

    当需要部署多个 Docker 应用时,使用公有仓库可能会遇到问题,这时候需要一个私有仓库,而 Docker 提供了一个方便的工具——Docker Registry,可以轻松搭建自己的私有仓库。 步骤一:安装 Docker Registry 使用如下命令拉取官方仓库: docker pull registry 使用如下命令运行 registry 容器: doc…

    Docker 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部