当前位置: 首页 > news >正文

【docker】安装docker环境并启动容器

一、安装docker

这里以centos系统为例安装docker环境

# 删除已有安装包
sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-enginesudo yum install -y yum-utils
# 设置源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装指定版本
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 开机启动
systemctl enable docker
# 启动
sudo systemctl start docker

安装完成后,执行命令docker version查看版本

[root@localhost ~]# docker version
Client: Docker Engine - CommunityVersion:           24.0.7API version:       1.43Go version:        go1.20.10Git commit:        afdd53bBuilt:             Thu Oct 26 09:11:35 2023OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          24.0.7API version:      1.43 (minimum version 1.12)Go version:       go1.20.10Git commit:       311b9ffBuilt:            Thu Oct 26 09:10:36 2023OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.26GitCommit:        3dd1e886e55dd695541fdcd67420c2888645a495runc:Version:          1.1.10GitCommit:        v1.1.10-0-g18a0cb0docker-init:Version:          0.19.0GitCommit:        de40ad0
[root@localhost ~]# 

安装docker-compose

## 安装最新版本docker-compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
## 加上许可权限
sudo chmod +x /usr/local/bin/docker-compose
## 查看是否已成功安装
docker-compose --version## docker-compose是一个文件,如果要卸载只需要把文件删除即可
rm /usr/local/bin/docker-compose

上面地址github.com有时候可能连不上(需要梯子),也可以从我的网盘下载,然后放在服务器上面。

网盘地址:

版本:v2.23.3
链接:https://pan.baidu.com/s/19i48r4qloOYSTh35J1XZJA 
提取码:s8ta
## 把文件传到目录 /usr/local/bin/docker-compose
## 加上许可权限
sudo chmod +x /usr/local/bin/docker-compose
## 查看是否已成功安装
docker-compose --version

二、使用已有镜像启动一个容器

下面以Nginx为例创建一个容器,步骤如下:

  1. 拉取Nginx镜像:首先,使用以下命令从Docker Hub上拉取Nginx镜像:

    docker pull nginx
    

    可以先使用docker search查询需要的镜像

  2. 运行Nginx容器:使用以下命令创建并运行一个Nginx容器:

    docker run -d -p 80:80 --name my-nginx nginx
    
    • -d:以后台模式运行容器。
    • -p 80:80:将主机的80端口映射到容器的80端口,这样可以通过主机的IP访问Nginx服务。
    • --name my-nginx:为容器指定一个名称,这里为my-nginx
  3. 访问Nginx服务:现在,您可以通过浏览器或命令行工具访问Nginx服务。如果您在本地运行Docker,可以在浏览器中输入http://localhost来访问Nginx默认页面。如果您在远程服务器上运行Docker,可以使用服务器的IP地址来访问Nginx服务。

  4. 容器启动完成后可以使用docker ps查看容器状态

这样,您就成功创建了一个基于Nginx的容器,并可以通过指定的端口访问Nginx服务。请注意,这只是一个简单的示例,您可以根据需要进行更多的配置和定制化。

这些是创建容器的基本步骤。您可以根据具体需求和场景,使用不同的选项和参数来创建和配置容器。

docker search命令

docker search命令用于在Docker Hub上搜索Docker镜像。以下是对docker search命令的详细解释:

语法:

docker search [OPTIONS] TERM

参数:

  • --filter , -f:根据指定的条件过滤搜索结果。可以使用多个过滤器,用逗号分隔。
  • --format:指定输出结果的格式。
  • --limit:限制返回结果的数量。
  • --no-trunc:不截断输出结果。
  • --stars:根据镜像的星级进行排序。

示例:

docker search ubuntu

这个命令将在Docker Hub上搜索包含关键词"ubuntu"的镜像,并返回相关的搜索结果。搜索结果包括镜像名称、描述、星级等信息。

您还可以使用过滤器来缩小搜索范围,例如:

docker search --filter "is-official=true" ubuntu

这个命令将只返回官方的Ubuntu镜像。

希望对您有所帮助!如果您还有其他问题,请随时提问。

docker run命令

docker run命令用于运行一个新容器,而启动一个容器需要非常多的信息,所以该命令的参数非常多。以下是一些常用的参数:

  1. 命令格式:
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  1. 常用选项:
  • -d:在后台运行容器,并返回容器ID。
  • -it:分配一个伪终端(pseudo-TTY)并绑定到容器的标准输入。
  • –name:指定容器名称。
  • -p:将主机端口映射到容器端口。
  • -v:将主机目录或文件挂载到容器中。
  • -e:设置环境变量。
  • –network:指定容器使用的网络模式。
  • –restart:设置容器的重启策略。
  • –rm:在容器退出时自动删除容器。
  • –security-opt:设置容器的安全选项。

此外,还有许多其他的参数可以用来定制容器的运行方式和行为。要获取更多关于Docker run命令的详细信息,可以查看Docker官方文档或使用“docker run --help”命令获取帮助信息。

  1. 示例:
  • 启动一个名为mycontainer的容器,使用nginx镜像,并监听80端口:
docker run -d -p 80:80 --name my-nginx nginx
  • 在容器中运行bash命令:
docker run -it ubuntu bash
  • 启动一个容器并将当前目录挂载到容器的/app目录:
docker run -v $(pwd)/app:/app myimage
  1. 注意事项:
  • 使用docker run命令启动的容器默认会从指定的镜像中运行。如果该镜像不存在本地,Docker会从Docker Hub上下载。
  • 可以通过指定COMMAND和ARG参数来运行其他命令或传递参数给容器。
  • 如果未指定容器名称,Docker会自动生成一个名称。如果需要,可以使用–name选项来指定一个自定义名称。
  • 可以通过-p和-v选项将主机的端口和文件系统映射到容器中,以实现容器的持久化和与主机的交互。
  • 可以使用-it选项在容器中运行交互式命令或进入容器的命令行界面。

相关文章:

【docker】安装docker环境并启动容器

一、安装docker 这里以centos系统为例安装docker环境 # 删除已有安装包 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-enginesudo yum install -y yum-utils # 设置源 y…...

AIOps探索 | 基于大模型构建高效的运维知识及智能问答平台(2)案例分享

原作者:擎创科技产品专家 布博士 案例分享 所需要的软件列表 本次案例的实现,全部采用开源或SAAS的产品来提供,并不涉及到私有化部署的软件产品。软件列表如下所示,如何申请apikey请自行研究,在这里不再详细说明&…...

【ESP32接入国产大模型之文心一言】

1. 怎样接入文心一言 随着人工智能技术的不断发展,自然语言处理领域也得到了广泛的关注和应用。在这个领域中,文心一言作为一款强大的自然语言处理工具,具有许多重要的应用价值。本文将重点介绍如何通过ESP32接入国产大模型之文心一言api&am…...

保湿剂,预计2026年市场规模将达到约230亿美元

全球市场分析 从全球市场来看,保湿剂市场规模正在快速增长。主要集中在欧美和亚太地区的市场,据市场调研机构的数据显示,预计2026年,全球保湿剂市场规模将达到约230亿美元。保湿剂的应用领域不断拓展,包括从化妆品到个…...

CodeWhisperer:编码世界中的声音启迪者

人烟 导语: 在数字化时代,编码已经成为了一种不可或缺的技能。而 CodeWhisperer(编码世界中的声音启迪者)则以其卓越的技术和深厚的知识为人们带来了独特的启发和指导。本文将介绍 CodeWhisperer 的背景和成就,探讨他是…...

golang学习专栏

GOLANG专栏 Golang基础教程 Golang基础教程 Golang练手算法 Golang练手算法 Golang设计模式 Golang设计模式 Golang数据结构和算法 Golang数据结构和算法 Golang并发编程 Golang并发编程 ORM框架Gorm Golang ORM框架gorm Golang源码分析 Golang源码分析 MySQL教程 MySQ…...

el-table表格动态添加列。多组数据拼接和多层级数据的处理

提示&#xff1a;el-table表格动态添加列 文章目录 前言一、多组数据拼接二、多层级处理三、实际应用中&#xff0c;为避免闪屏&#xff0c;可以表格数据统一渲染总结 前言 需求&#xff1a;富文本编辑器 一、多组数据拼接 <template><div class"test">…...

ThinkPHP6.0任意文件上传 PHPSESSION 已亲自复现

ThinkPHP6.0任意文件上传 PHPSESSION 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建安装thinkphp6漏洞信息配置 漏洞利用 修复建议 漏洞名称 漏洞描述 2020年1月10日&#xff0c;ThinkPHP团队发布一个补丁更新&#xff0c;修复了一处由不安全的SessionId导致的任意文…...

短说社区运营的使用工具分享(一)

本文是一篇针对短说社区运营的使用工具分享帖&#xff0c;是小编结合日常使用&#xff0c;总结的一些可以帮助网站管理员和运营人员进行日常操作和管理的工具。 1. 想天工作台之运营面板 想天工作台可以将桌面划分不同的类型来辅助办公&#xff0c;我分享下我当前的桌面情况&…...

关于.gitignore文件

.gitignore文件用于忽略git同步文件。 git上创建项目时&#xff0c;默认的.gitignore文件配置比较少&#xff0c;不太适合于windows下vs的开发设置。 下面是vs中.gitignore条目样例&#xff1a; # Prerequisites *.d# Compiled Object files *.slo *.lo *.o *.obj*.iobj *.V…...

Cell 文章图复现

多组差异火山图复现 参考文章: A Spatiotemporal Organ-Wide Gene Expression and Cell Atlas of the Developing Human Heart Figure 2. H 图里主要是单细胞数据不同cluster之间的差异火山图, 所以说白了就是散点图和柱状图的结合, 散点图用差异基因绘制, 柱状图利用logFC最…...

只需一招彻底解决SOLIDWORKS不显示缩略图预览

SOLIDWORKS缩略图能够让工程师便于识别想要打开的模型&#xff0c;但经常会有用户遇到在资源管理器中查看SOLIDWORKS文件时&#xff0c;仅显示SOLIDWORKS的图标&#xff0c;而没有相关文件的预览缩略图。 Windows文件夹选项设置 首先确保Windows文件夹选项设置&#xff0c;显…...

nccl 源码分析 从 ncclAllReduce 的执行开始认识nccl源代码

文字没有提及的代码内容&#xff0c;不需要太在意&#xff0c;当然也可以瞟两眼&#xff1b; 首先&#xff0c;总体而言函数 ncclAllReduce 的功能在于将携带了一个操作的info结构体&#xff0c;放入了队列中&#xff0c;待后面执行&#xff1b; 排队的函数调用是 ncclEnqueue…...

仿照AirDrop(隔空投送)优雅地在局域网中传输文件

基于WebRTC的局域网文件传输 在前一段时间&#xff0c;我想在手机上向电脑发送文件&#xff0c;因为要发送的文件比较多&#xff0c;所以我想直接通过USB连到电脑上传输&#xff0c;等我将手机连到电脑上之后&#xff0c;我发现手机竟然无法被电脑识别&#xff0c;能够充电但是…...

【PHP】TP5.0及Fastadmin中将查询数据返回对象转为数组

目录 方法一&#xff1a;使用collection助手函数 方法二&#xff1a;设置返回数据集的对象名 在 ThinkPHP 5.0 中&#xff0c;对模型查询返回的对象进行了优化&#xff0c;默认情况下&#xff0c;使用 all 或 select 方法查询数据库将返回一个对象数组集合。这个集合是模型的…...

大公司里怎样开发和部署前端代码?

前端训练营&#xff1a;1v1私教&#xff0c;终身辅导计划&#xff0c;帮你拿到满意的 offer。 已帮助数百位同学拿到了中大厂 offer。欢迎来撩~~~~~~~~ Hello&#xff0c;大家好&#xff0c;我是 Sunday。 昨天的时候有同学问到前端部署相关的内容&#xff0c;正好在知乎中看到…...

API接口:原理、设计与实践

一、引言 随着互联网的发展&#xff0c;应用程序之间的交互变得越来越频繁&#xff0c;API接口成为了不同应用程序之间进行数据交换的重要手段。本文将详细介绍API接口的原理、设计与实践&#xff0c;以期帮助读者更好地理解和应用这一技术。 二、API接口概述 API&#xff0…...

2023年TIOBE指数TOP50的编程语言写“Hello World!”

这篇文章列出了TIOBE指数TOP50的编程语言&#xff08;TIOBE Index - TIOBE&#xff09;如何写“Hello World&#xff01;”。“Hello World&#xff01;”代码应该是每个程序员学习一门编程语言最先实现的程序&#xff0c;给我们带来了很多美好的回忆&#xff0c;下面我们就一次…...

spring、springmvc、springboot、springcloud简介

spring简介 spring是什么&#xff1f; spring: 春天spring: 轻量级的控制反转和面向切面编程的框架 历史 2002年&#xff0c;首次推出spring雏形&#xff0c;interface 21框架2004年&#xff0c;发布1.0版本Rod Johnson: 创始人&#xff0c;悉尼大学&#xff0c;音乐学博士…...

立仪科技光谱共焦位移传感器:应用领域的广泛性

在科技日新月异的今天&#xff0c;光谱共焦位移传感器以其精确、稳定的特性&#xff0c;在各个领域得到了广泛的应用。本文将详细介绍光谱共焦位移传感器的应用情况&#xff0c;以期让大家对其有更深入的了解。我们来理解一下什么是光谱共焦位移传感器。 它是一种通过测量物体表…...

OpenLayers 可视化之热力图

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 热力图&#xff08;Heatmap&#xff09;又叫热点图&#xff0c;是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件&#xff1a;-&#xff08;纯文本文件&#xff0c;二进制文件&#xff0c;数据格式文件&#xff09; 如文本文件、图片、程序文件等。 目录文件&#xff1a;d&#xff08;directory&#xff09; 用来存放其他文件或子目录。 设备…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

【大模型RAG】Docker 一键部署 Milvus 完整攻略

本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装&#xff1b;只需暴露 19530&#xff08;gRPC&#xff09;与 9091&#xff08;HTTP/WebUI&#xff09;两个端口&#xff0c;即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)

升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点&#xff0c;但无自动故障转移能力&#xff0c;Master宕机后需人工切换&#xff0c;期间消息可能无法读取。Slave仅存储数据&#xff0c;无法主动升级为Master响应请求&#xff…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

Docker 本地安装 mysql 数据库

Docker: Accelerated Container Application Development 下载对应操作系统版本的 docker &#xff1b;并安装。 基础操作不再赘述。 打开 macOS 终端&#xff0c;开始 docker 安装mysql之旅 第一步 docker search mysql 》〉docker search mysql NAME DE…...