首页 > 其他分享 >docker入门

docker入门

时间:2024-04-30 16:24:47浏览次数:27  
标签:容器 宿主机 入门 sudo kibana docker Docker

docker的安装

安装Docker的步骤取决于您的操作系统。以下是在不同操作系统中安装Docker的简要步骤和示例代码:

Ubuntu

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

Debian

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

CentOS

sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
# 查看是否安装成功,若成功则显示版本号
docker -v

Windows

macOS

检查Docker是否正确安装

运行hello-world镜像来测试Docker是否正确安装:

sudo docker run hello-world

如果安装成功,您将看到一条消息表明您的Docker安装正常运行。

启动Docker服务

在所有平台上,安装完成后,启动Docker服务:

sudo systemctl start docker
sudo systemctl enable docker

查看Docker服务的状态

systemctl status docker

设置Docker服务开启自启动

systemctl enable docker

重启Docker服务

systemctl restart docker

Docker常用命令

# docker下载镜像,如下载es镜像
docker pull elasticsearch:7.12.1
# 通过docker使用镜像,创建一个容器,以es为例
docker run -d --name es -p 92xx:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.12.1
# 查看所有Docker容器信息,返回容器ID或名称等
docker ps -a
# 进入某个docker容器(可使用ls查看容器中文件)
docker exec -it <容器ID或名称> /bin/bash
# 退出容器,需要输入以下命令并回车
exit
# 启动某个容器,并且配置好容器中的端口映射到宿主机的端口,如
# 创建es的容器 并启动  single-node单机 
# docker run指定容器中的某端口映射到宿主机的某端口的命令是:docker run -p <宿主机端口>:<容器内部端口> <镜像名称>
docker run -d --name es -p 9211:9211 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.12.1
# 重启容器
docker restart <容器ID或名称>
# 根据所获得的容器ID或名词,关闭容器
docker stop <容器ID或名称>
# 如果你想充分停止和删除容器,可以使用docker rm命令,以删除容器资源,这样会清除所有数据
docker rm <容器ID或名称>
# 如果你想保留旧容器的数据,可以在启动新容器时指定一个新的名称。-d表示后台运行,--name用于指定新的容器名称
docker start -d --name new_container_name old_container_name
# 列出已下载的镜像
docker images
# 彻底删除镜像,根据上条命令返回找到镜像的仓库(REPOSITORY)和标签(TAG)
docker rmi <image-name>:<tag>
# 查看容器日志,即使<容器ID或名称>没有启动也可以用容器名称查看
docker logs <容器ID或名称>

怎么修改docker中的文件

以修改docker中kibana的配置文件为例

要修改Docker容器中Kibana的配置,你可以通过以下步骤进行:

  1. 找到Kibana的配置文件kibana.yml所在的宿主机路径。
  2. 在宿主机上修改kibana.yml文件。
  3. 重新启动Docker容器。

以下是一个示例流程:

  1. 找到Kibana的配置文件路径。首先,你需要找到Kibana Docker容器的ID或名称:

    docker ps
    
  2. 使用docker exec命令进入容器并找到配置文件的实际路径:

    docker exec -it <container_id_or_name> /bin/bash
    cat /usr/share/kibana/config/kibana.yml
    
  3. 使用exit命令退出容器,并在宿主机上找到该配置文件路径,然后编辑kibana.yml文件。例如,如果你使用的是默认配置,可以直接修改宿主机上的/usr/share/kibana/config/kibana.yml文件。

  4. 修改完成后,重新启动Kibana容器:

    docker restart <container_id_or_name>
    

    如果你想要在启动容器时就指定配置文件,可以使用Docker挂载卷的方式将宿主机上的配置文件挂载到容器中对应的路径上。例如:

    docker run -d -v /path/to/your/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:latest
    

    这样,启动的Kibana容器就会使用你宿主机上的配置文件。

标签:容器,宿主机,入门,sudo,kibana,docker,Docker
From: https://www.cnblogs.com/caixiaoqi/p/18168235

相关文章

  • 详解安卓架构入门
    准备首先进入安卓架构入门的代码仓库:AndroidArchitectureStarterTemplates:https://github.com/android/architecture-templates先看看介绍,简单分析一下:架构入门的模板UI界面非常简陋Navigation导航协程和FlowHilt依赖注入Hilt虚假数据进行UI测试提供了两个......
  • 较为平滑的 Linux ps 命令入门
    初衷一些无关紧要的Balabala。在国内外的各类网站上,关于Linux的几乎每一条命令都可以找到很多介绍,其中自然有许多得到了广泛认可的课程和文档。在具有一定基础知识的前提下直接参考这些有价值的资料无疑是具有极高效率的做法,个人写一条介绍命令用法的博客实在是浪费自己的时......
  • TypeScript入门5:模块化(导入导出)
    1.概述2.语法3.避免命名冲突4.默认导入导出......
  • TypeScript入门3:接口、多态
    //接口:通常情况下,接⼝中只会包含属性和⽅法的声明,⽽不包含具体的实现细节,具体的细节由其实现类完成interfacePerson9{id:number;name:string;age:number;introduce():void;}//实现类中,需要包含接⼝属性的赋值逻辑,以及接⼝⽅法的实现逻辑classStudent9im......
  • TypeScript入门2:类、继承、访问修饰符
    classPerson{//实例属性id:number;name:string;age:number=18;//构造函数constructor(id:number,name:string){this.id=id;this.name=name;}//实例方法introduce():string{return`hello,Iam${this.name},and......
  • Go语言系列——数组和切片、可变参数函数、Maps、字符串、指针、结构体、方法、接口(一
    文章目录11-数组和切片数组数组的声明数组是值类型数组的长度使用range迭代数组多维数组切片创建一个切片切片的修改切片的长度和容量使用make创建一个切片追加切片元素切片的函数传递多维切片内存优化12-可变参数函数什么是可变参数函数语法通过一些例子理解可变参......
  • TypeScript入门1:注释、变量常量、数据类型、函数
    console.log('hits');//声明变量leta:number=10;//声明常量constb:number=20;//类型推断:如果⼀个变量或常量的声明包含了初始值,TS便可以根据初始值进⾏类型推断,此时可以不显式指定其类型letc=60;console.log(typeofc);//number//数字类型:整数和浮点......
  • 【Go 语言入门专栏】Go 语言的起源与发展
    前言Go语言是当下最为流行的编程语言之一,大约在2020、2021年左右开始于国内盛行,许多大厂很早就将部分Java项目迁移到了Go,足可看出其在性能方面的优越性。相信各位都知道,在爬虫业务中,并发是一个关键的需求,不然仅靠单线程采集数据,只怕公司垮了数据都还没采完。以往编写爬虫......
  • HydroOJ 从入门到入土(17)批量转化其他格式题库(Python)
    新题库,新快乐,新痛苦。一、想法有了多种题库之后,常常会遇到大量题库无法转化到自己的OJ上。每次都要重新手写解析器,非常浪费时间,于是抽出了这个工具。本工具可以将抽取好的信息自动组装成符合HydroOJ格式的题目并自动压缩,解决后半部分的转化工作。二、实现1.准备包和相......
  • 使用 docker-compose 部署 oracle19c
    目前应该很少有公司再使用oracle11gR2版本了,官方在2020-12-31日后就停止支持和维护了,绝大多数公司应该都升级到oracle19c版本了。因此当前oracle数据库中使用最多的版本就是oracle19c了,但是官方对其支持和维护的截止日期是2026-3-31。其实即使官方停止技术支持和......