Centos 7 搭建Docker环境

简介: Centos 7 搭建Docker环境

Docker简介


产生背景


  • 开发和运维之间因为环境不同而导致的矛盾
  • 集群环境下每台机器部署相同的应用
  • DevOps(Development and Operations)


简介


Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。


Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。


安装与配置 Docker


  • 安装 Docker
    首先安装 Docker 必要依赖包 :
yum install -y yum-utils device-mapper-persistent-data lvm2

1.png

image.png

看到以上操作说明我们docker容器依赖已经安装完成

由于自带 yum 没有 Docker-CE 所以我们需要先增加 docker repo:

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


用 yum 安装 Docker:


yum install -y docker-ce

image.png

有人安装可能会遇到这种情况,这种情况只需耐心等待就行,这个安装过程根据你的网速来决定

直接yum安装,安装成功后查看版本

docker -v

1.png

这里我们查看版本信息发现版本19.03.1

启动docker

service docker start

设置开机启动(有需要的可以设置)

chkconfig docker on


配置 Docker


因为国内访问 Docker Hub 较慢, 可以使用腾讯云提供的国内镜像源, 加速访问 Docker Hub

依次执行以下命令

echo "OPTIONS='--registry-mirror=https://mirror.ccs.tencentyun.com'" >> /etc/sysconfig/docker
systemctl daemon-reload
service docker restart

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://1jd01gvs.mirror.aliyuncs.com"]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

Docker 的简单操作

下载镜像

下载一个官方的 CentOS 镜像到本地

docker pull centos

1.png

下载好的镜像就会出现在镜像列表里

docker images

1.png


运行容器


这时我们可以在刚才下载的 CentOS 镜像生成的容器内操作了。


生成一个 centos 镜像为模板的容器并使用 bash shell

docker run -it centos /bin/bash

1.png

这个时候可以看到命令行的前端已经变成了 [root@(一串 hash Id)] 的形式, 这说明我们已经成功进入了 CentOS 容器。


在容器内执行任意命令, 不会影响到宿主机, 如下

mkdir -p /data/docker-file

可以看到 /data 目录下已经创建成功了 docker-file 文件夹

ls /data

退出容器

exit

查看宿主机的 /data 目录, 并没有 docker-file 文件夹, 说明容器内的操作不会影响到宿主机

ls /data


保存容器


查看所有的容器信息, 能获取容器的id

docker ps -a

1.png

然后执行如下命令,保存镜像:

docker commit -m="备注" 你的CONTAINER_ID 你的IMAGE

docker容器搭建是不是很简单,欢迎大家能静下心来阅读,如果喜欢就分享一下,感谢你的支持

相关文章
|
8天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
95 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
1天前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
8 1
|
5天前
|
安全 Linux Shell
docker运行centos提示Operation not permitted
通过上述步骤,可以有效排查和解决在Docker中运行CentOS容器时遇到的"Operation not permitted"错误。这些措施涵盖了从权限配置、安全策略到容器运行参数的各个方面,确保在不同环境和使用场景下都能顺利运行容器。如果你需要进一步优化和管理你的Docker环境
12 3
|
18天前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
63 1
|
20天前
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
151 3
|
20天前
|
网络安全 虚拟化 Docker
SSH后判断当前服务器是云主机、物理机、虚拟机、docker环境
结合上述方法,您可以对当前环境进行较为准确的判断。重要的是理解每种环境的特征,并通过系统的响应进行综合分析。如果在Docker容器内,通常会有明显的环境标志和受限的资源视图;而在云主机或虚拟机上,虽然它们也可能是虚拟化的,但通常提供更接近物理机的体验,且可通过硬件标识来识别虚拟化平台。物理机则直接反映硬件真实信息,较少有虚拟化痕迹。通过这些线索,您应该能够定位到您所处的环境类型。
17 2
|
28天前
|
存储 监控 Shell
docker的底层原理二:容器运行时环境
本文深入探讨了Docker容器运行时环境的关键技术,包括命名空间、控制组、联合文件系统、容器运行时以及分离的进程树,这些技术共同确保了容器的隔离性、资源控制和可移植性。
36 5
|
28天前
|
jenkins Java 持续交付
Docker搭建jenkins环境
这篇文章详细介绍了如何利用Docker搭建Jenkins环境,包括拉取Jenkins镜像、配置端口映射及初始化设置的步骤。
104 0
Docker搭建jenkins环境
|
21天前
|
安全 Linux 数据库连接
CentOS 7环境下DM8数据库的安装与配置
【10月更文挑战第16天】本文介绍了在 CentOS 7 环境下安装与配置达梦数据库(DM8)的详细步骤,包括安装前准备、创建安装用户、上传安装文件、解压并运行安装程序、初始化数据库实例、配置环境变量、启动数据库服务、配置数据库连接和参数、备份与恢复、以及安装后的安全设置、性能优化和定期维护等内容。通过这些步骤,可以顺利完成 DM8 的安装与配置。
137 0
|
29天前
|
Linux 持续交付 iOS开发
docker的使用(环境特殊时可以考虑使用)
docker的使用(环境特殊时可以考虑使用)
12 0