docker学习系列4 简单总结 docker-curriculum
来源:https://docker-curriculum.com/
这篇文章不错,可以作为第一篇 docker 的入门,我简单总结了下。顺便重温下之前的内容。
如果你是刚学docker,最好跟着敲一遍。
- 安装,略,自己去官方文档查
- 执行
docker pull busybox
去官方拉镜像
BusyBox 是一个集成了三百多个最常用Linux命令和工具的软件。
简单的说BusyBox就好像是个大工具箱,它集成压缩了 Linux 的许多工具和命令,也包含了 Android 系统的自带的shell。 - 使用
docker images
查看镜像 - 创建容器启动
docker run busybox
会看到啥都没有发生,因为没有提供任何命令,容器启动后,运行个空命令就退出了。 - 如果提供个命令呢
docker run busybox echo "hello from busybox"
这个能看到输出了,但是容器执行完依然退出了。 - 我想查看正在运行的容器
docker ps
没有任何输出
试试docker ps -a
可以看到刚刚运行过的容器了,注意 status 列
- 如果想以交互式方式运行容器,并进入容器终端,就用
docker run -it busybox sh
注意 -it 一般是同时出现的
-t tty的缩写 终端控制台
-i interactive 可交互缩写
如果想知道 run 后面都能带什么参数及含义,请使用 docker run --help
- 一些术语:
- Docker Daemon - Docker为C/S架构,服务端为docker daemon,在后台运行,用于管理,构建,分发容器
- Docker Client - 就是咱们用的命令行工具,还有 GUI 图形化的Kitematic
- Docker Hub - 分享,查找镜像资源的网站
WEBAPPS WITH DOCKER
- 我们运行一个容器
docker run --rm prakhar1989/static-site
prakhar1989/static-site 是作者维护的镜像
--rm 当退出容器时自动移除
这里容器启动会显示了 nginx is running,但没有告诉更多的信息
按 ctrl+c 退出 - 使用
docker run -d -P --name static-site prakhar1989/static-site
-d 放到后台运行
-P 将容器内应用运行使用的端口暴露出来 ( Publish all exposed ports to random ports)
--name 给容器起个名字
端口有了,可以打开站点了,还可以使用 docker run -p 8888:80 prakhar1989/static-site
指定端口
同时运行了两个容器
- 暂停容器用
docker stop static-site
static-site 是我们给运行时给容器起的名字,也可以用ID - 后面内容是使用 Dockerfile 构建自己的镜像并上传到AWS。由于之前讲过而且aws国内使用不方便,此处略过。
- 当docker安装后,会自动创建三个网络
$ docker network ls NETWORK ID NAME DRIVER SCOPE c2c695315b3a bridge bridge local a875bec5d6fd host host local ead0e804a67b none null local
默认使用的是 bridge 桥接。使用 docker network inspect bridge
在 Containers 下面看到正在使用该网络方式的所有容器。默认所有的容器都会使用bridge,通过刚才的命令还可以看到每个容器分配到的内部IP。 一般是 172.17.0.xx。 为了安全及方便,我们需要使某几个容器之间使用自己的桥接网络,如何做到呢?
- 使用
docker network
创建一个新的bridge网络,比如docker network create foodtrucks-net
- 运行 Elasticsearch 容器并把刚创建的网络分配给他
docker run -d --name es --net foodtrucks-net -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2
- 然后运行Python Flask 容器,并进到bash终端
docker run -it --rm --net foodtrucks-net finleyma/foodtrucks-web bash
来测试下能否访问到 Elasticsearch 容器curl es:9200
tips: 访问容器网络没有输入容器的IP地址,用的容器名称表示,这种能力叫 automatic service discovery
备注:elasticsearch挺占内存的,我服务器4G内存,在docker运行启动后出现了警告
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Docker自制镜像之私有云平台完整版
一、Docker安装 Docker之安装篇 二、Docker操作 搜索中央仓库可用镜像 $docker search centos 2.1【镜像操作命令】 2.1.1 查看所有镜像docker images删除所有镜像 $docker rmi $(docker images -q) 2.1.2 删除没有使用的镜像 docker rmi -f $(docker images | grep "" | awk "{print \$3}") 2.2【容器操作命令】 2.2.1 查看所有容器(包括未运行) $docker ps -a 2.2.2 删除所有未运行容器(https://www.jb51.net/article/111073.htm) $docker rm $(docker ps -a -q) 2.2.3 删除停止的容器 $docker rm $(docker ps --all -q -f status=exited) 2.2.4 创建容器(暂不推荐) $docker create --name=wang-base-node[增加可选参数] 2.2.5 创建并启动容器(推荐,注:显示指...
- 下一篇
Unity 之 Pure版EntityComponentSystem(ECS) 官方Rotation示例解析
又有一段时间没有写博客了,真是不爽~~~ 趁着最近两天没事,赶紧补上一篇,这次开始写一篇Pure ECS版本示例解析,对上次Hybrid版本Unity之浅析 Entity Component System (ECS)的补充,使用的是官方案例的Rotation场景。 有说错或不准确的地方欢迎留言指正 Unity版本 208.2.3f1 Entities 版本 preview.8 ECS虽然现在已经实装,但还在实验阶段,笔者在开发的过程中也遇到了一些IDE卡顿,Unity编辑器崩溃的情况。这个情况相信在Unity后续版本中会得到改善。 这么多问题为什么还要用呢?那就是计算速度快!!!真的很快,笔者这垃圾笔记本此场景创建20W个Cube还能保持在20帧左右,所以可见一斑。 主要参考官方文档地址 对应工程文件下载 2018/08/29更新 添加 [BurstComplie]特性 以后如果你打开Burst Complier的话,下面的代码会在编译的时候被Burst Compiler优化,运行速度更快,目前Burst只是运行在编辑器模式下,之后正式出了会支持编译 效果展示 下面笔者会逐步创建示例中...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Red5直播服务器,属于Java语言的直播服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS6,CentOS7官方镜像安装Oracle11G
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装