Docker 的快速使用

这篇具有很好参考价值的文章主要介绍了Docker 的快速使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

ubuntu安装
centos安装

安装完毕之后执行一下这条命令,可以避免每次使用docker命令都需要sudo权限

sudo usermod -aG docker $USER

阿里云docker镜像加速
DockerHub

遇到不懂或者不会使用的命令可以使用docker --help查看文档

docker --help
如:
docker save --help
docker load --help

Docker 的快速使用,微服务,docker,容器,运维
 

使用docker时需要特别注意防火墙端口占用

 


 

镜像相关命令

镜像是将应用程序及其需要的系统函数库、环境、配置、依赖等打包而成。
docker images # 查看所有镜像

docker pull nginx   # 从云端(docker hub)拉取nginx镜像,没有指定tag则是最新

docker save -o ubuntu:20.04.tar nginx # 将镜像导出到磁盘

docker rmi nginx  # 删除镜像

docker load -i nginx  # 从磁盘中载入镜像

... #更多使用 参看 docker --hlep

 


 

容器相关命令

容器相当于一个只能运行当前镜像的一个微系统,只包含镜像运行所需要的lib库、依赖、bash等文件。
# --name:容器名称 -p: 宿主机端口 映射 容器内端口 -d:后台运行容器
docker run --name mynginx -p 20000:22 -d nginx 

docker ps  # 查看所有运行中的容器
docker ps -a # 查看所有容器

docker logs mynginx # 查看容器日志
docker logs -f mynginx # -f 跟踪日志输出,实时监控

docker pause mynginx # 挂起(暂停)容器
docker unpause mynginx # 恢复原本状态容器

docker stop mynginx # 停止容器

docker rm mynginx # 删除容器
docker rm -f mynginx # 强制删除容器,不建议

# exec: 进入容器内部执行一个命令  -it:给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
docker exec -it mn bash # 进入mn容器,执行bash命令, exit可以退出容器

.... #更多使用 参看 docker --hlep
有些镜像可能会比较难创建和使用容器,如果发现使用run命令并且去查看状态并没有启动时,可以参看镜像的使用文档或者百度
在docker hub:https://hub.docker.com/_/nginx中查看镜像时,可以发现底下会有使用容器的教程的

Docker 的快速使用,微服务,docker,容器,运维
 


 

数据卷

数据卷可以使得宿主机和容器文件做一个映射。用户只操作宿主机文件就可以达到修改容器中的文件,达到用户操作和容器的解耦合,用户不需要进入容器中修改文件。

Docker 的快速使用,微服务,docker,容器,运维

docker volume --help	# 查看数据卷的帮助文档
docker volume create html	# 创建一个或多个数据卷

docker volume ls	# 查看所有数据卷
docker volume inspect html	# 显示一个或多个数据卷的详细信息

docker volume prune 	# 删除所有未被使用的本地数据卷
docker volume rm html 	# 删除一个或多个数据卷
在启动时可以使用-v volumeName:/targetContainerPath参数来挂载(映射)数据卷
docker run --name mn -p 80:80 -v html:/usr/share/nginx/html -d nginx # -v 数据卷:需要映射容器中的文件
# 如果数据卷没有创建,docker会自动创建。

Docker 的快速使用,微服务,docker,容器,运维
挂载成功后,修改挂载点中的文件,容器中的文件也会跟着改变

 


 

Dockerfile自定义镜像:Dockerfile参考文档

Docker 的快速使用,微服务,docker,容器,运维
编写DockerFile文件

# 指定基础镜像
FROM ubuntu:16.04
# 配置环境变量,JDK的安装目录
ENV JAVA_DIR=/usr/local

# 拷贝运行环境jdk 和 java项目的包
COPY ./jdk8.tar.gz $JAVA_DIR/
COPY ./docker-demo.jar /tmp/app.jar

# 安装JDK
RUN cd $JAVA_DIR \
 && tar -xf ./jdk8.tar.gz \
 && mv ./jdk1.8.0_144 ./java8

# 配置环境变量
ENV JAVA_HOME=$JAVA_DIR/java8
ENV PATH=$PATH:$JAVA_HOME/bin

# 暴露端口
EXPOSE 8090
# 入口,java项目的启动命令
ENTRYPOINT java -jar /tmp/app.jar

编辑完DockerFile文件后,使用 docker build 开始构建

# -t: 镜像名:tag  ./: Dockerfile所在的文件夹
docker buld -t javaweb:1.0 ./

由于有分层的概念,构建时可以使用别的基础镜像文章来源地址https://www.toymoban.com/news/detail-681557.html

 # 指定基础镜像
FROM java:8-alpine  

 #项目
COPY ./docker-demo.jar /tmp/app.jar

# 暴露端口
EXPOSE 8090
# 入口,java项目的启动命令
ENTRYPOINT java -jar /tmp/app.jar

如果发现服务怎么都起不来,可以检查下内存是否足够
top # 可以查看内存
df -h # 查看磁盘内存

到了这里,关于Docker 的快速使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 让Docker容器内的服务能够访问宿主机上的其他容器的端口,可以使用Docker的网络功能

    要让Docker容器内的服务能够访问宿主机上的其他容器的端口,可以使用Docker的网络功能。 Docker提供了多种网络驱动程序,例如 bridge 、 host 、 overlay 等。其中, bridge 是默认的网络驱动程序,它会在每个Docker容器内创建一个虚拟的网卡,同时会为每个容器分配一个独立的IP地址

    2024年02月14日
    浏览(29)
  • 使用Docker快速搭建基础服务

    编辑broker.conf,并设置brokerIP1 上述方法需要我们单独对每一个服务进行启动,当基础服务多的时候,非常不方便,所以可以采用Docker-Compose的方式一键启动,以下是相关步骤 1.docker-compose手动安装 在这个目录下载docker-compose-Linux-x86_64: https://github.com/docker/compose/releases/tag/1.25.5

    2024年02月07日
    浏览(29)
  • K8S自动化运维容器化(Docker)集群程序

    1.什么是K8S K8S全程为Kubernetes,由于K到S直接有8个字母简称为K8S。 版本:目前一般是1.18~1.2.0,后续可能会到1.24-1.26,1.24版本后丢弃了docker(如需要使用需要第三方插件配合),目前最新版本是1.27 官网:https://kubernetes.io GitHub:GitHub - kubernetes/kubernetes: Production-Grade Container Schedul

    2024年02月10日
    浏览(44)
  • 使用 docker 快速部署 flask接口服务 一

    以前没有使用过docker,近期需要使用部署自己的服务,因此需要学习,先从简单的使用起来,后面专门整理一篇 如何部署 模型的方法。 理论知识就不说了,网上很多,咱直接上步骤 整理逻辑分为: 基于dockerfile创建镜像 使用 docker-compose 创建容器 后台启动 当然这些步骤完全

    2024年01月17日
    浏览(39)
  • 体验感极好,docker爱好者福音,1Panel服务器运维管理面板使用引导功能介绍

    目录 一.介绍 二.特点 1.服务器管理便捷高效 2.资源实时监控 3.日志管理 4.远程终端访问 5.防护性较强 6.功能强大 三.与1Panel交流讨论 1.官网主页 2.微信公众号 3.哔哩哔哩账户 四.获取1Panel 1.进入官网,已提供安装方式 2.按提示安装 3.部署完成后之后要查看入口和用户密码信息

    2024年02月04日
    浏览(36)
  • 使用docker快速搭建wordpress服务,并指定域名访问

    wordpress是一个基于PHP语言编写的开源的内容管理系统(CMS),它有丰富的插件和主题,可以非常简单的创建各种类型的网站,包括企业网站、电子商务网站、新闻门户、论坛等等。 强大的社区支持:WordPress拥有庞大的用户社区,你可以在社区中获取帮助、分享经验和学习新技

    2024年02月13日
    浏览(31)
  • 使用Docker-compose快速构建Nacos服务

    在微服务架构中,服务的注册与发现扮演着至关重要的角色。Nacos(Naming and Configuration Service)是阿里巴巴开源的服务注册与发现组件,致力于支持动态配置管理和服务发现。最近,一位朋友表达了对搭建一套Nacos开发环境的兴趣。先前,我们曾发布了一篇有关在Linux上直接部

    2024年01月24日
    浏览(41)
  • docker save 命令 docker load 命令 快速复制容器

    docker save 命令用于在系统上把正在使用的某个容器镜像 导出成容器镜像文件保存下载,以便在其他系统上导入这个容器镜像文件 以便快速在其他服务器上启动相同的容器。 查看redis容器和镜像 导出redis镜像文件 注意命令中 -o 跟的是导出的镜像文件的文件名 可以任意命名 本

    2024年03月15日
    浏览(47)
  • 使用docker-file 将springboot项目打成镜像,发布成容器服务

    [root@localhost ~]# uname -r 3.10.0-862.el7.x86_64 [root@localhost ~]# yum install docker [root@localhost export]# systemctl start docker [root@localhost export]# docker -v Docker version 1.13.1, build 7d71120/1.13.1 [root@localhost export]# systemctl status docker ● docker.service - Docker Application Container Engine    Loaded: loaded (/usr/lib/systemd

    2024年02月13日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包