iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >Docker容器的创建运行方式有哪些
  • 926
分享到

Docker容器的创建运行方式有哪些

2024-04-02 19:04:59 926人浏览 安东尼
摘要

这篇文章主要介绍“Docker容器的创建运行方式有哪些”,在日常操作中,相信很多人在Docker容器的创建运行方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Dock

这篇文章主要介绍“Docker容器的创建运行方式有哪些”,在日常操作中,相信很多人在Docker容器的创建运行方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker容器的创建运行方式有哪些”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

方式一:docker run命令方式

docker run --name some-Nginx -p 1080:80 -v /some/content:/usr/share/nginx/html -d nginx

参数说明:

--name:定义容器名。

-p:宿主机与容器的端口挂载,格式:宿主机端口:容器内部端口

-v:宿主机目录与容器内目录映射,格式:宿主机目录:容器内部目录

-d:后台执行

执行以上命令就可以啦,这里把容器名取名为some-nginx,把容器的80端口映射到宿主机的1080端口,容器内的/usr/share/nginx/html目录映射到宿主机的/some/content目录,使用的是nginx最新的镜像,镜像部分也可以写成  “nginx:版本”比如“nginx:1.15.1”。

在/some/content创建一个index.html,随便输入个内容。

访问下 ip+1080可以看到请求到nginx了。

Docker容器的创建运行方式有哪些

访问nginx测试

docker run方式在运行简单的容器方面还是比较方便的。

方式二:Dockerfile配置文件构建镜像方式

1.创建一个文件,命名为Dockerfile,输入以下内容。

FROM nginx COPY html /usr/share/nginx/html

FROM nginx 代表以nginx镜像为基础构建我们的镜像。

注意需要先在Dockerfile同目录创建html目录,不然会报错。

Dockerfile文件内可以自定义镜像内容,有很多指令可以用,比如可以在配置容器创建后运行shell脚本等,可以自行查阅,本文仅做一个简单的用法示例入门

注意:Dockerfile 的指令每执行一次都会在 docker 上新建一层,所以尽量不要写太多层。

2.在Dockerfile同目录下运行命令创建镜像

docker build -t my-nginx-image .

注意最后面有一个点。

3.运行容器

docker run --name some-nginx -p 1080:80 -d my-nginx-image

在html目录里新建一个index.html文件随便输入个内容,访问下 ip+1080可以看到请求到nginx了。

Docker容器的创建运行方式有哪些

访问nginx测试

Dockerfile一般用于自定义镜像,因为是个文件,也比命令的方式更易于保存与团队间共享。

方式三:docker -compose方式

在需要管理多个容器时用以上两种方式都不太适合,不仅要管理每个容器的配置信息,还要处理容器间的关系,这时候就需要docker-compose来做容器编排了。

1.创建一个docker-compose.yml文件,输入以下内容

version: "3" services:   nginx:     image: nginx     container_name: some-nginx     ports:       - "1080:80"     volumes:       - /some/content:/usr/share/nginx/html

在/some/content创建一个index.html,随便输入个内容,等会访问测试。

2.执行启动命令

docker-compose up -d

访问下 ip+1080可以看到请求到nginx了。

Docker容器的创建运行方式有哪些

访问测试

docker-compose.yml文件里可以写多个容器配置信息,有提供各种配置项用于容器编排。

比如我有一个SpringBoot项目,需要打包成jar包然后创建容器运行,需要连接一个数据库容器,最后需要一个nginx容器做请求代理。那么docker-compose.yml文件可以这样写。

version: "3" services:   Mysql:     image: mysql:5.7.26     ports:       - "13306:3306"       restart: "always"     container_name: mysql     command:       --default-authentication-plugin=mysql_native_passWord --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --max_connections=1000 --default-storage-engine=INNODB --lower_case_table_names=1 --default-time_zone='+8:00'       --sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"     privileged: true         environment:       - MYSQL_ROOT_PASSWORD=123456       - TZ="Asia/Shanghai"     volumes:         - /opt/docker/mysql/conf:/etc/mysql/mysql.conf.d       - /etc/localtime:/etc/localtime       - /opt/docker/mysql/logs:/var/log/mysql       - /opt/docker/mysql/data:/var/lib/mysql   my-server:     image: java:8     restart: "always"     container_name: my-server     environment:       - TZ="Asia/Shanghai"     volumes:         - /opt/my-serve/my-serve-0.0.1-SNAPSHOT.jar:/data/my-serve-0.0.1-SNAPSHOT.jar       - /etc/localtime:/etc/localtime       - /opt/var/logs:/var/logs     entrypoint: java -jar /data/my-serve-0.0.1-SNAPSHOT.jar --server.port=18081   nginx:     image: nginx     container_name: nginx     volumes:       - /opt/my-serve:/home/nginx       - /opt/docker/nginx/conf.d/:/etc/nginx/conf.d/       - /opt/docker/nginx/log/:/var/log/nginx/       - /opt/docker/nginx/html/:/usr/share/nginx/html/     restart: "always"     network_mode: "host"

只要执行 docker-compose up -d 命令就可以把配置文件内的所有容器启动起来,是不是很方便呢。

在实际项目中,一般Dockerfile和docker-compose用得比较多,不过现在kubernetes越来越火,以后可能Kubernetes也会占领市场也不一定。

到此,关于“Docker容器的创建运行方式有哪些”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Docker容器的创建运行方式有哪些

本文链接: https://www.lsjlt.com/news/84293.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Docker容器的创建运行方式有哪些
    这篇文章主要介绍“Docker容器的创建运行方式有哪些”,在日常操作中,相信很多人在Docker容器的创建运行方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Dock...
    99+
    2024-04-02
  • Docker如何创建运行多个mysql容器
    这篇文章主要介绍“Docker如何创建运行多个mysql容器”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Docker如何创建运行多个mysql容器”文章能帮助大家...
    99+
    2024-04-02
  • docker容器互联的方式有哪些
    Docker容器互联的方式有以下几种: 使用Docker Compose:Docker Compose是一个用于定义和运行多个D...
    99+
    2023-10-22
    docker
  • docker启动容器的方式有哪些
    Docker启动容器的方式有以下几种:1. 使用`docker run`命令启动容器,例如:`docker run `。2. 使用`...
    99+
    2023-09-16
    docker
  • PHP 的运行方式有哪些?
    PHP本质上的运行方式可以分为两种: 基于命令行的基于PHP-FPM的 但实际上,PHP能做的事很多,很多场景下,不同的运行方式能让开发更方便,减轻各种工作。 测试开发 PHP内置了一个HTTP 的s...
    99+
    2023-09-10
    php 服务器 开发语言
  • 运行Shell的方式有哪些
    这篇文章将为大家详细讲解有关运行Shell的方式有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Shell 一共有四种运行方式:交互式的登录 Shell;交互式的非登录 Shell;非交...
    99+
    2023-06-06
  • Typescript的运行方式有哪些
    这篇文章主要介绍Typescript的运行方式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、在线complier这种方式最简单,不需在本地做任何配置安装,只需进入Types...
    99+
    2024-04-02
  • android运行的方式有哪些
    Android运行的方式有以下几种:1. 手机运行方式:Android系统最常见的运行方式是在移动设备上,例如智能手机和平板电脑上运...
    99+
    2023-08-23
    android
  • 创建RDD的方式有哪些
    这篇文章主要讲解了“创建RDD的方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“创建RDD的方式有哪些”吧!从集合中创建RDD val conf = new&nb...
    99+
    2023-06-02
  • 运行nodejs的方式有哪些
    有多种方式可以运行Node.js代码:1. 命令行:在命令行中输入 `node ` 即可运行指定的Node.js文件。2. REPL...
    99+
    2023-08-16
    nodejs
  • 教你如何从正在运行的容器创建 Docker 映像
    Docker 容器通常是缺乏内部状态的临时应用程序实例。这是处理它们的最佳实践方法,可让您随时停止或重新启动容器。 但有时对容器文件系统的修改是不可避免的。也许您正在试用软件并希望...
    99+
    2024-04-02
  • docker镜像的构建方式有哪些
    Docker镜像的构建方式有以下几种:1. 基于已有镜像:可以通过在已有镜像的基础上进行修改和定制来构建新的镜像。这种方式可以通过D...
    99+
    2023-09-18
    docker
  • Spring创建bean的方式有哪些
    这篇文章主要讲解了“Spring创建bean的方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spring创建bean的方式有哪些”吧!环境Ubuntu 22.04IntelliJ ...
    99+
    2023-07-02
  • java创建bean的方式有哪些
    在Java中,创建bean的方式有以下几种:1. 手动创建:通过使用new关键字实例化一个对象,并为其设置属性值。```javaBe...
    99+
    2023-09-21
    java
  • docker镜像构建的方式有哪些
    有以下几种构建Docker镜像的方式: 使用Dockerfile:Dockerfile 是一个包含了构建 Docker 镜像步骤...
    99+
    2024-03-13
    docker
  • 线程池的创建方式有哪些
    这篇文章主要讲解了“线程池的创建方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“线程池的创建方式有哪些”吧!什么是线程池线程池(ThreadPool...
    99+
    2024-04-02
  • java创建对象的方式有哪些
    在Java中创建对象的方式有以下几种:1. 使用 `new` 关键字:通过使用 `new` 关键字,可以实例化一个类,并在内存中分配...
    99+
    2023-09-13
    java
  • c++创建对象的方式有哪些
    在C++中,创建对象的方式有以下几种:1. 使用new关键字创建对象,这将在堆上分配内存空间。```MyClass* obj = n...
    99+
    2023-08-16
    c++
  • React创建组件的方式有哪些
    这篇文章主要介绍了React创建组件的方式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。React推出后,出于不同的原因先后出现三种定...
    99+
    2024-04-02
  • sql创建索引的方式有哪些
    在SQL中,创建索引的方式有以下几种: 在创建表时为特定列添加索引:在创建表的SQL语句中,可以为特定列添加索引。例如: CRE...
    99+
    2024-03-05
    sql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作