【云原生】Docker 实践(一):在 Docker 中部署第一个应用

Docker 实践(一):在 Docker 中部署第一个应用

  • 1.使用 YUM 方式安装 Docker
  • 2.验证 Docker 环境
  • 3.在 Docker 中部署第一个应用
    • 3.1 小插曲:docker pull 报 missing signature key 错误
    • 3.2 重新安装 Nginx

1.使用 YUM 方式安装 Docker

执行以下命令进行安装:

yum -y install docker

执行以下命令启动 Docker 的服务:

# 服务立即启动
systemctl start docker.service
# 将服务设置为每次开机启动
systemctl enable docker.service

在这里插入图片描述

从上图可以看到,Docker 分为 Client 端和 Server 端,当前安装的 Docker 是 1.13.1 版本。

若要停止 Docker,则使用以下命令:

systemctl stop docker

2.验证 Docker 环境

使用 docker info 命令可以查看 Docker 运行状态的详细信息。

docker info

在这里插入图片描述

Containers: 0Running: 0Paused: 0Stopped: 0
Images: 0
Server Version: 1.13.1
Storage Driver: overlay2Backing Filesystem: extfsSupports d_type: trueNative Overlay Diff: true
Logging Driver: journald
Cgroup Driver: systemd
Plugins: Volume: localNetwork: bridge host macvlan null overlay
Swarm: inactive
Runtimes: docker-runc runc
Default Runtime: docker-runc
Init Binary: /usr/libexec/docker/docker-init-current
containerd version:  (expected: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1)
runc version: 283e28b7d8a5ba31dd51213ce9126f3e0d529cfb (expected: 9df8b306d01f59d3a8029be411de015b7304dd8f)
init version: fec3683b971d9c3ef73f284f176672c44b448662 (expected: 949e6facb77383876aeff8a6944dde66b3089574)
Security Options:seccompWARNING: You're not using the default seccomp profileProfile: /etc/docker/seccomp.json
Kernel Version: 3.10.0-1160.49.1.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
Number of Docker Hooks: 3
CPUs: 2
Total Memory: 3.7 GiB
Name: VM-24-17-centos
ID: 4VDV:DKVF:GFPL:XGOG:ODHU:37Z5:SE77:T47J:KKR3:ZI3X:VQ43:GIDO
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:127.0.0.0/8
Live Restore Enabled: false
Registries: docker.io (secure)

通过使用系统服务命令可以查看 Docker 的运行状态。

systemctl status docker

在这里插入图片描述

3.在 Docker 中部署第一个应用

下面将演示如何在 Docker 中,通过使用 Nginx 镜像来部署第一个应用。

在镜像仓库中搜索 Nginx 的镜像。其中,OFFICAL 列中标有 [OK] 的镜像是 Docker 官方提供的镜像。

docker search nginx

在这里插入图片描述
通过以下命令从镜像仓库拉取 Nginx 的镜像到本地,这里拉取了 docker.io/library/nginx 镜像,即官方提供的 Nginx 镜像。

docker pull nginx

在这里插入图片描述

3.1 小插曲:docker pull 报 missing signature key 错误

参考《docker pull 报 missing signature key 错误》

这里报错了,是因为我们前面安装的 Docker 版本太低了。需要先卸载,再重新安装。

yum erase docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-selinux \docker-engine-selinux \docker-engine \docker-ce

在这里插入图片描述
因为之前安装 Docker 的时候使用的是 yum -y install docker 命令,这个命令安装的是老版本,Docker 最新版本已经不叫这个名字了,需要使用 yum -y docker-ce 来安装。

yum -y install docker-ce

如果找不到 docker-ce,加入一个 yum 新镜像。

在这里插入图片描述

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

在这里插入图片描述

再次执行 yum -y install docker-ce 安装命令。

yum -y install docker-ce

在这里插入图片描述
在这里插入图片描述

可以看到,新安装的 Docker 版本是 26.1.0

在这里插入图片描述

3.2 重新安装 Nginx

docker pull nginx

在这里插入图片描述

使用 docker images 命令查看本地的镜像信息。

docker images

在这里插入图片描述
执行以下命令使用镜像来创建 Nginx 的容器。

docker run -d -p 1234:80 nginx
  • -d:启动容器的守护进程。
  • -p:将容器内的 80 端口映射到宿主机的 1234 端口。这样就可以通过宿主机访问容器内部了。

在容器创建并启动成功后,可以查看 Docker 的容器信息。

docker ps

在这里插入图片描述
打开浏览器访问 http://xxx.xx.xxx.xxx:1234/,将打开 Nginx 的首页。
在这里插入图片描述
如果要终止和销毁容器,则执行以下命令。

docker rm -f 5e9b19cf567b

在这里插入图片描述
再次查看容器信息,可以看到没有任何运行的容器信息。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微信小程序+esp8266温湿度读取

本文主要使用微信小程序显示ESP8266读取的温湿度并通过微信小程序控制LED灯。小程序界面如下图所示 原理讲解 esp8266 通过mqtt发布消息,微信小程序通过mqtt 订阅消息,小程序订阅后,就可以实时收到esp8266 传输来的消息。 个人可免费注册五个微信小程序账号,在微信小程序官…

基于java,SpringBoot和VUE的求职招聘简历管理系统设计

摘要 基于Java, Spring Boot和Vue的求职招聘管理系统是一个为了简化求职者与雇主间互动流程而设计的现代化在线平台。该系统后端采用Spring Boot框架,以便快速搭建具有自动配置、安全性和事务管理等特性的RESTful API服务,而前端则使用Vue.js框架构建动…

2024最新docker部署gitlab

docker部署gitlab 快速命令 1 拉取镜像 docker pull gitlab/gitlab-ce2 启动容器 docker run -itd \-p 9980:80 \-p 9922:22 \-v /opt/soft/docker/gitlab/etc:/etc/gitlab \-v /opt/soft/docker/gitlab/log:/var/log/gitlab \-v /opt/soft/docker/gitlab/opt:/var/opt/g…

【C语言实现贪吃蛇】(内含源码)

前言:首先在实现贪吃蛇小游戏之前,我们要先了解Win32 API的有关知识 1.Win32 API Windows这个多作业系统除了协调应用程序的执行、分配内存、管理资源之外,它同时也是一个很大的服务中心,调佣这个中心的各种服务(每一…

设置cordova编译时采用本地已下载的gralde

设置cordova编译时采用本地已下载的gralde 前言 编译Cordova时,往往会根据cordova工程的需要从网络上下载不同版本的gradle用于编译,每次下载带来编译速度慢,甚至因为网络不稳定,导致提示因无法下载gradle而编译失败!…

【如何使用SSH密钥验证提升服务器安全性及操作效率】(优雅的连接到自己的linux服务器)

文章目录 一、理论基础(不喜欢这部分的可直接看具体操作)1.为什么要看本文(为了zhuangbility)2.为什么要用密钥验证(更安全不易被攻破)3.密码验证与密钥验证的区别 二、具体操作1.生成密钥对1.1抉择&#x…

挑战一周完成Vue3项目Day4: 用户管理+角色管理+菜单管理+首页+暗黑模式/主题切换

一、用户管理 1.静态搭建 src/views/acl/user/index.vue <template><el-card style"height:80px;"><el-form :inline"true" class"form"><el-form-item label"用户名&#xff1a;"><el-input placehold…

LT2611UX四端口 LVDS转 HDMI2.0,带音频

描述LT2611UX 是一款面向机顶盒、DVD 应用的高性能 LVDS 至 HDMI2.0 转换器。LVDS输入可配置为单端口、双端口或四端口&#xff0c;具有1个高速时钟通道和3~4个高速数据通道&#xff0c;工作速率最高为1.2Gbps/通道&#xff0c;可支持高达19.2Gbps的总带宽。LT2611UX 支持灵活的…

设计模式之MVC模式

在编程江湖闯荡多年&#xff0c;我手中打磨过的设计模式多如繁星&#xff0c;但论及经典与实用&#xff0c; MVC&#xff08;Model-View-Controller&#xff09;模式 绝对是个中翘楚&#xff01;它不仅是Web应用的骨架&#xff0c;更是软件架构的智慧结晶。今天&#xff0c;咱们…

tomcat篇-windows 运行tomcat的startup.bat时,终端打印的中文显示为乱码

当运行Tomcat的startup.bat时&#xff0c;如果终端中中文显示为乱码&#xff0c;这通常是因为Tomcat使用的日志输出编码与Windows命令行默认的编码不匹配。针对这一问题&#xff0c;你可以尝试以下步骤来解决&#xff1a; 1、执行startup.bat&#xff0c;在输出的窗口右击&…

从Paint 3D入门glTF

Paint 3D Microsoft Paint 3D是微软的一款图像编辑软件&#xff0c;它是传统的Microsoft Paint程序的升级版。 这个新版本的Paint专注于三维设计和创作&#xff0c;使用户可以使用简单的工具创建和编辑三维模型。 Microsoft Paint 3D具有直观的界面和易于使用的工具&#xff0…

笔记-用Python脚本启停JAR程序

用Python脚本启停JAR程序&#xff0c;需要用到python中的以下内置模块 subprocess 是 Python 的一个标准库模块&#xff0c;用于在新进程中执行子命令&#xff0c;获取子进程的输入/输出/错误以及返回码等os 是 Python 的一个标准库模块&#xff0c;它提供了与操作系统交互的功…

ICode国际青少年编程竞赛- Python-1级训练场-for循环练习

ICode国际青少年编程竞赛- Python-1级训练场-for循环练习 1、 for i in range(3):Dev.step(4)Dev.turnLeft()2、 for i in range(3):Dev.step(2)Dev.turnRight()Dev.step(2)Dev.turnLeft()3、 for i in range(3):Dev.step(2)Dev.turnRight()Dev.step(2)Dev.turnLeft()4、 for…

ubuntu与redhat的不同之处

华子目录 什么是ubuntu概述 ubuntu版本简介桌面版服务器版 安装部署部署后的设置设置root密码关闭防火墙启用允许root进行ssh登录更改apt源安装所需软件 网络配置Netplan概述配置详解配置文件DHCP静态IP设置设置 软件安装方法apt安装软件作用常用命令配置apt源 deb软件包安装概…

C语言中的三大循环

C语言中为我们提供了三种循环语句&#xff0c;今天我就来与诸君细谈其中之奥妙。循环这一板块总结的内容较多&#xff0c;而且&#xff0c;很重要&#xff01;&#xff08;敲黑板&#xff01;&#xff01;&#xff01;)&#xff0c;所以诸君一定要对此上心&#xff0c;耐住性子…

golang反射

go反射 反射基本介绍应用场景基本使用结构体注意练习最佳实践遍历结构体的方法&#xff0c;调用接头体的方法&#xff0c;获取结构体的标签 反射 基本介绍 反射可以在运行时动态获取变量的各种信息&#xff0c;比如变量的类型(type)、类别(kind)如果是结构体变量&#xff0c;…

设计模式: 工厂模式

工厂模式&#xff08;Factory Pattern&#xff09;是 Java 中最常用的设计模式之一&#xff0c;这种类型的设计模式属于创建型模式&#xff0c;它提供了一种创建对象的最佳方式。 工厂模式提供了一种创建对象的方式&#xff0c;而无需指定要创建的具体类。 工厂模式属于创建型…

【Web】D^3CTF之浅聊d3pythonhttp——TE-CL请求走私

目录 step0 题目信息 step1 jwt空密钥伪造 step1.5 有关TE&CL的lab step2 TE-CL请求走私 payload1 payload2 step0 题目信息 注意到题目源码前端是flask写的&#xff0c;后端是web.py写的 frontend from flask import Flask, request, redirect, render_templat…

万界星空科技商业开源MES+项目合作+商业开源低代码平台

今天我想和大家分享的是一套商业开源的 MES制造执行管理系统带源码。对于制造业而言&#xff0c;MES 是一个至关重要的系统&#xff0c;它可以帮助企业提高生产效率、优化资源利用、提高产品质量&#xff0c;从而增强市场竞争力。 什么是 MES&#xff1f; MES 是指通过计算机技…

安装部署大语言模型 | 通义千问

下载安装 进入ollama的仓库下载 「 qwen 7b 」 libraryGet up and running with large language models.https://ollama.com/library查找阿里的 「 qwen 」 根据自己的电脑配置情况&#xff0c;选择合适的模型 总体来说&#xff0c;模型是越大&#xff0c;效果越好&#xff0c…