Docker部署三个centos7容器

简介: 用完完成在容器环境中部署大数据相关组件

一,在centos7安装docker引擎

官方文档:https://docs.docker.com/engine/install/centos/

1,设置存储库

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

2,安装docker引擎

yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

3,启动 Docker。

systemctl start docker

4, 配置镜像加速

# 1 创建目录
mkdir -p /etc/docker
# 2 创建文件
vi /etc/docker/daemon.json
# 3 输入内容
{
 "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}
# 4 重启
systemctl daemon-reload
systemctl restart docker

5,验证

docker run hello-world

二,在docker搭建三个容器

1、拉取镜像

docker pull centos:centos7

2、查看镜像

docker images

image-20230612111352955**

3、设置网桥

设置docker网桥,用于分配固定IP

docker network create --subnet=192.168.1.1/24 network

4、搭建容器

这里我们搭建三个Centos容器

docker run -d --privileged --restart=always -it  --name master -h master --net network --ip 192.168.1.10 centos:centos7 /usr/sbin/init
docker run -d --privileged --restart=always -it  --name slave1 -h slave1 --net network --ip 192.168.1.11 centos:centos7 /usr/sbin/init
docker run -d --privileged --restart=always -it  --name slave2 -h slave2 --net network --ip 192.168.1.12 centos:centos7 /usr/sbin/init

参数说明:

  • –privileged(必需) 指定容器是否是特权容器,这里开启特权模式
  • -it 启动互动模式(必需)(不加容器会不停启动)
  • /usr/sbin/init(必需) 初始化容器里的CENTOS(没有初始化和特权等等的开关,就不能使用systemctl)
  • --name 容器名称
  • --restart=always 容器自动启动
  • -h 容器主机名
  • --net 设置网桥
  • --ip 指定容器IP

5、进入容器

docker exec -it master /bin/bash
docker exec -it slave1 /bin/bash
docker exec -it slave2 /bin/bash

6、设置密码

在三个容器内都需要执行:passwd root,然后输入两次密码

6、安装工具

# 在三个容器都需要执行
# 部署OpenSSHbash
yum -y install openssh openssh-server openssh-clients
systemctl start sshd
# 安装网络下载工具wget和文本编辑器vim
yum install wget vim -y:
# 安装网络工具集,包括ifconfig、netstat、route等
yum install net-tools.x86_64 -y
# 安装系统初始化脚本,提供系统启动、停止、重启、运行级别等管理功能
yum install initscripts -y

6、从宿主机发送安装包到容器

1,先使用xftp将安装包放到宿主机/opt目录下

2,将安装包复制到容器里面

# 将 宿主机opt下的software复制到容器master的opt目录下
docker cp /opt/software/ master:/opt/

完成!

可以进行大数据环境部署了。

相关文章
kde
|
2月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
kde
968 4
|
2月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
140 5
kde
|
2月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
kde
739 7
|
2月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
413 5
|
2月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
215 6
|
运维 Java Devops
阿里云云效操作报错合集之部署docker时遇到报错,该怎么办
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
运维 Kubernetes 前端开发
【云原生】阿里云服务器部署 Docker Swarm集群
阿里云服务器 一键部署 Docker Swarm 集群!
979 0
【云原生】阿里云服务器部署 Docker Swarm集群
|
弹性计算 数据可视化 关系型数据库
使用阿里云部署基于docker的mysql云服务
本篇文章将介绍如何使用阿里云安装docker、部署mysql服务,并远程连接至远端mysql
939 1
使用阿里云部署基于docker的mysql云服务