1 获取镜像

docker pull nginx
docker pull nginx:latest

2 查看本地镜像

docker images

3 运行镜像

docker run -d -p 80:80 nginx

-d 后台运行
-p 内外端口映射

4 查看正在运行的容器

docker ps

5 修改容器

docker exec -it xxxx bash

-it 接容器id

6 删除容器

docker rm -f xxx

7 提交容器

docker commit xxx name(自己定一个名字)

8 通过dockerfile构建镜像跑成容器

新建dockerfile文件(写法自行查阅官方文档)

然后在当前目录新建index.html

9 保存文件和重新加载



摘一个网友(湿漉漉的小狐狸)的笔记

安装和常用CLI:
添加阿里云镜像:sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装命令:sudo yum install -y  docker-ce docker-ce-cli containerd.io
启动命令:sudo systemctl start docker
添加当前用户到docker用户组:sudo usermod -aG docker $USER (需注销),newgrp docker (立即生效)
Helloworld:docker run hello-world  (本地没有镜像的话会自动从远端仓库pull)
pull nginx 镜像:docker pull nginx(等效于nginx:latest)
运行:docker run -【d】(后台运行不阻塞shell) 【-p 80:80】(指定容器端口映射,内部:外部) nginx
查看正在运行:docker ps
删除容器:docker rm -f <container id(不用打全,前缀区分)>
进入bash:docker exec -it <container id(不用打全,前缀区分)> bash
commit镜像:docker commit <container id(不用打全,前缀区分)>  <name>
查看镜像列表:docker images (刚才commit的镜像)
使用运行刚才commit的镜像:docker run -d <name>
使用Dockerfile构建镜像:docker build -t <name> <存放Dockerfile的文件夹>
删除镜像:docker rmi <name>
保存为tar:docker save <name> > <tar name>
从tar加载:docker load < <tar name>一些启动参数:
后台运行容器:-d
容器内外端口映射:-p 内部端口号:外部端口号
目录映射:-v 'dir name' : <dir>
指定映像版本:<name>:<ver>

多容器项目的组织

docker run -d -p 80:80 --name mynginx nginx
docker ps
docker exec -it mynginx bash
cat /etc/hosts


172.17.0.2是容器的ip
然后我们退出(exit)然后又启动一个新的容器

docker run -dit alpine
docker exec -it xxxx(容器id)apk add curl
curl 172.17.0.2



–link 参数 把另一个容器映射到本容器里面(通过修改/etc/hosts文件)

三个容器的组织

注意:创建顺序需要先mysql,然后启动php的时候link参数映射到mysql,同理类推~
这样对运维来说太麻烦了,有什么好方法吗?docker-compose

docker-compose 用法

(本小节实验涉及的文件参考:https://github.com/bobo132/docker-compose-demo-1)

新建俩文件夹
+
|____ conf
|____ html


然后在conf/下面建立nginx.conf

(略)
然后写docker-compose.yml

(不能指定官方的php,因为缺少扩展,搜索php-fpm然后选一个~

然后退出vim~
在该目录下运行docker-compose up -d (-d 后台启动)



学习资源

课程

  1. 【docker入门】10分钟,快速学会docker
  2. 【docker入门2】实战~如何组织一个多容器项目docker-compose
  3. 【Docker】Dockerfile用法全解析
  4. 【kubernetes入门】快速了解和上手容器编排工具k8s

实验
4. https://labs.play-with-docker.com/
不需要本地安装,在web端做实验~

Docker快速上手指南相关推荐

  1. 分布式作业 Elastic-Job 快速上手指南

    转载自 分布式作业 Elastic-Job 快速上手指南 Elastic-Job支持 JAVA API 和 Spring 配置两种方式配置任务,这里我们使用 JAVA API 的形式来创建一个简单的任 ...

  2. TortoiseGit + GitHub 快速上手指南

    TortoiseGit + GitHub 快速上手指南 名词解释: 1. TortoiseGit 是 TortoiseSVN的Git版,它很好的实现了与windows资源管理器的融合,使用界面与Tor ...

  3. raptor累乘流程图_Markdown快速上手指南

    Markdown快速上手指南 1.Markdown介绍 markdown可以实现快速html文档编辑,格式优没,并且不需要使用html元素. markdown采用普通文本的形式,例如读书笔记等易于使用 ...

  4. 最新课程 | openGauss 快速上手指南课程即将开课

    点击蓝字|关注我们 2020 年 7 月 1 日,openGauss 数据库源代码正式开放,并成立了 openGauss 开源社区.恩墨学院与 openGauss 开源社区达成合作,为了推动社区技术生 ...

  5. NexentaStor iSCSI/ NAS 存储服务器软件图解教程(3)——NMV快速上手指南Part2

    NexentaStoriSCSI/NAS 存储服务器软件图解教程(3) Nexenta Management View (NMV)/*NexentaStor Web 管理界面*/快速上手指南Part ...

  6. HTAP 快速上手指南

    本指南介绍如何快速上手体验 TiDB 的一站式混合型在线事务与在线分析处理 (Hybrid Transactional and Analytical Processing, HTAP) 功能. 注意 ...

  7. Wwise 快速上手指南: 程序员篇(v2016.1)

    Wwise 快速上手指南: 程序员篇(v2016.1) https://gameinstitute.qq.com/community/detail/107700 Wwise 快速上手指南: 程序员篇 ...

  8. 中文CLIP快速上手指南

    当前OpenAI提出的CLIP是AI领域内最火热的多模态预训练模型,简单的图文双塔结构让多模态表征学习变得异常简单.此前CLIP只有官方英文版本,如果想在中文领域尤其是业务当中使用这种强大的表征模型, ...

  9. ROS四旋翼无人机快速上手指南(1):无人机系统硬件概述与指南简介

    成就更好的自己 ROS无人机快速上手指南旨在于让使用此无人机开发平台的比赛参赛人员,算法设计人员,无人机爱好者更加快速的了解底层控制运作原理,从而缩短开发周期,减少掉坑次数,快速验证算法的速度,不用在 ...

最新文章

  1. linux shell 循环语句 for while until
  2. Windows 系统电脑开机速度加快
  3. hadoop的同类技术_Hadoop 气数已尽:逃离复杂性,拥抱云计算
  4. 基于双TMS320C6678+双XC6VSX315T的6U VPX高速数据处理平台
  5. [工具]-脚本自动化工具:按照linux kernel标准格式化输出文件(format_file)
  6. redis维护问题总结
  7. 查看oracle监听服务状态,(总结)Oracle监听服务lsnrctl参数及查询状态详解
  8. 通过Dapr实现一个简单的基于.net的微服务电商系统(四)——一步一步教你如何撸Dapr之订阅发布...
  9. 2.3Python基础语法(三)之输入输出
  10. 图片浏览器每次只能打开一张图片_好嗨哟!微信图片批量提取下载,我只用了3秒钟~...
  11. 今天看到一个热搜,说一个美团会员配送费6元,普通用户2元,导致轩然大波
  12. Linux查看进程是否占用,Linux 下查看哪个进程占用swap空间
  13. 基于Matlab科技论文绘图:plot、imagesc
  14. 2022年全球与中国ODM和EMS网络硬件行业发展趋势及投资战略分析报告
  15. android 关闭软键盘失去焦点,Android edittext 点击其他处 失去焦点和关闭软键盘
  16. IOS superView和subView
  17. 信息系统安全开发注意事项(一)
  18. LTU、TTU、DTU、FTU、RTU在电路中的安装位置,功能,区别
  19. 游戏UI程序设计与开发
  20. 【已解决】将CentOS7系统安装至U盘(一):系统安装与使用

热门文章

  1. 基于androidstudio校园快递APP系统的设计与实现
  2. uni 退款 流程 和物流流程
  3. Numpy基础:数组和矢量计算-笔记与代码
  4. “电脑登录界面显示引用的账户当前已锁定”解决办法
  5. 商务统计_14 统计指数
  6. python链表怎么定义_链表初介绍以及python实现
  7. 【labview 2020 32位】vJoy 库
  8. NFC手机公交卡技术和应用
  9. 【C++】STL——反向迭代器的模拟实现:迭代器适配器
  10. [转]matlab下载地址