docker容器入门到实战

为什么要使用docker
docker是一种容器化部署环境,在我们平常部署应用时,通常会考虑到线上环境是否有冲突等问题,这些所有的应用都处于一个环境中,而docker容器则是独立的一个环境。它完全隔离了应用部署之间环境冲突问题。我们需要考虑在独立的环境中,运行自己的项目是否存在存储容量过大,文件存储是否安全等问题。下面我们画张图来充分理解docker存储:
在这里插入图片描述
接下来我们需要看MySQL,redis,gitlab这些应用里面的文件是特别重要的,我们使用docker启动时,怎么去进行应用备份存储呢?接下来我们开始使用docker吧:
1.安装docker环境:

1:卸载旧的版本

 sudo yum remove docker \
                     docker-client \
                     docker-client-latest \
                     docker-common \
                     docker-latest \
                     docker-latest-logrotate \
                     docker-logrotate \
                     docker-engine 

2:安装yum-utils

sudo yum install -y yum-utils

3:添加yum源

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

4:更新索引

sudo yum makecache fast

5:安装docker-ce

sudo yum install -y docker-ce

6:启动docker

systemctl start docker

7:查看docker版本

docker version

8:拉取docker镜像:docker run hello-world在这里插入图片描述
9:查看镜像:docker images
在这里插入图片描述
10:启动镜像:docker run hello-word
11:查看容器:docker ps -a

在这里插入图片描述
差不多整个docker环境安装就完毕了,更多命令大家可以自行百度了。

什么是镜像,什么是容器,怎么做数据实时备份,端口访问
镜像相当于一个系统环境,里面有redis环境,mysql环境,gitlab的环境等等,但是它们都是纯净的没用任何数据的。
容器基于镜像进行运行的,里面是redis环境运行,然后生成有个容器,容器里面主要是运行这个redis环境,并且存储redis所生成的数据,在存储的时候,它只是存储在容器里面,如果运维人员失误操作导致容器被删除,那里面的数据直接删除了是特别灾难性的,同时删除容器只需要一个命令,将数据只存储在容器中是特别危险的,那么在我们运行容器的时候命令应该这样敲:

docker run -d -p 8089:80 -v /etc/data/error.log:/etc:data/error.log 554d20f20365
docker run -d  -p linux外部端口:容器内部端口 -v /linux目录:/docker容器内部目录  镜像id

第一段命令
-p linux外部端口:容器内部端口,这个是指外部端口暴露,因为docker容器内部的端口,你是不好访问的,这个时候我们使用linux端口去映射到docker容器内部端口即可访问容器服务。
第二段命令
-v /linux目录:/docker容器内部目录:这段命令是指docker挂载:进行docker内部目录与linux目录进行实时存储,当docker容器被误删时,使用上面容器启动命令,可以将linux目录备份的容器数据进行恢复。这样我们docker环境就更加安全了。

如何构建我们自己的docker镜像
在docker镜像中,我们可以通过docker pull mysql形式去拉取远程的镜像,同时我们也会有自己的镜像,比如jar文件。这个时候我们就需要使用dockerfile进行镜像构建了:

FROM java:8
COPY hello-boot-1.0-SNAPSHOT.jar /hello-boot.jar
CMD ["--service.port=8080"]
EXPOSE 8080
ENTRYPOINT ["java","-jar","/hello-boot.jar"]

form使用jdk8
copy将linux中的jar,复制到docker镜像中
cmd配置端口
expose 暴露8080端口
ENTRYPOINT在启动容器时执行 java jar /hello-boot.jar命令
下面开始构建:
在这里插入图片描述如何通过docker命令启动该jar包即可:

docker run -d -p 8089:8080 ad417eada2f3

同时在启动容器时可以能会出现各种容器启动失败的问题,大家可以进入容器内部进行调试:
进入容器:
docker exec -it 容器id /bin/bash
查看容器日志:
docker logs -f -t --tail=10 容器id

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: Docker是一款几乎可以运行任何应用程序的开源容器引擎。随着云计算和DevOps的普及,Docker已经成为从开发、测试到部署的必备工具。如果你想深入学习Docker,建议先下载《Docker入门实战PDF》。 《Docker入门实战PDF》是一本权威详细的Docker实践指南,由国内知名的Docker实践者编写。它从Docker的基本概念、安装、命令行操作到Docker的高级特性,以及介绍了如何将Docker用于构建应用、CI/CD流水线和容器集群管理等实践案例。这本书还涵盖了个人笔记、调试技巧、错误处理和最佳实践等方面。 如果你是一个开发人员或运维人员,想要更好地了解Docker容器化技术,那么《Docker入门实战PDF》是非常适合你的。这本书非常详细,内容涵盖了各种Docker使用场景,你可以通过下载PDF版的电子书免费阅读学习。通过实践,你可以深入了解Docker并且掌握如何使用它构建更加高效的应用程序和云计算环境。 ### 回答2: Docker是一款流行的容器化技术工具,它能够快速、高效地构建、打包和部署应用程序。由于其灵活性和易用性,越来越多的企业和开发者开始把Docker应用到他们的工作中。因此,学习如何使用Docker已经成为了许多人必备的技能。 对于想要学习Docker的人来说,《Docker入门实战》是一本非常好的参考书籍。它由德国作者Tobias Gesellchen所著,包含了有关Docker的基础知识、实践和最佳实践等方面的内容。 这本书的内容分为四个部分: 第一部分介绍了Docker基础,并展示如何在自己的计算机上安装和使用Docker。 第二部分主要讲解了如何使用Docker来构建和打包应用程序,以及如何使用Docker Compose来管理复杂的应用程序。 第三部分重点关注了Docker容器和网络的安全性,以及如何扩展和优化Docker容器的性能。 最后一部分提供了一些使用Docker的最佳实践和案例研究,以帮助读者快速掌握Docker的运用。 这本书不仅适用于Docker的初学者,还适合有经验的开发者和系统管理员。读完本书,您将会对Docker的工作原理有清晰的了解,掌握Docker的基础操作,应用Docker构建并部署应用程序,并可以使用Docker的最佳实践来提高您的效率。 总之,《Docker入门实战》是一本非常有用的书籍,能够帮助您更好地了解和使用Docker。您可以在各大电子书商城中购买或下载PDF版本来阅读。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

戴~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值