Docker学习笔记(第一阶段)

强烈推荐:遇见狂神说的个人空间_哔哩哔哩_Bilibili

一、安装docker

1.步骤

# 1.卸载旧的docker版本
​
yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
​
# 2.需要的安装包
​
yum install -y yum-utils
​
# 3.设置镜像仓库
​
yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repo  #  默认是国外的yum-config-manager \--add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  #  推荐使用阿里云镜像
​
# 4.更新yum
​
yum makecache fast
​
# 5.安装docker最新版   ce指的是社区版  ee是企业版
​
yum install docker-ce docker-ce-cli containerd.io
​
# 6.启动docker
​
systemctl start docker
​
# 7.使用 docker version  来查看是否启动
​
# 8.测试hello world
docker run hello-world

# 9.注意
​
当使用docker run  XXX 来运行的时候,  如果在本机镜像里没有找到对应的(XXX)镜像,则会去docker hub 下载下来。
​
# 10.查看下载的镜像
docker images
​

2.附docker官网和帮助文档

官网地址:Empowering App Development for Developers | Docker

帮助文档:

3.docker run 流程

4.重要

4.1 我们有了镜像才可以创建容器!!!

4.2 容器是通过镜像创建的

二、Docker 常用命令

1.帮助命令

docker version     #查看docker版本
docker info        #显示docker的系统信息,包括镜像和容器的数量
docker 命令 --help  # 帮助命令

2.镜像命令

2.1、查看镜像命令

docker images  #查看全部镜像命令

docker images --help   #查看镜像命令帮助

docker images -a    #查看全部镜像

docker images -q   #仅仅显示镜像的id   经常用到

2.2、搜索镜像命令

docker search  XXX   #搜索镜像命令   
# 以搜索 mysql 镜像为例
​
docker search mysql

docker search --help    #查看搜索镜像命令的全部帮助

docker search mysql --filter=STARS=5000   #搜索stars为5000的mysql镜像    --filter  为过滤

2.3、下载镜像命令

docker pull XXX  #下载镜像命令 默认下载最新版本
docker pull XXX:[tag]   # 下载指定版本镜像
docker pull --help   #下载镜像命令的查看帮助

docker pull mysql     #下载mysql镜像
docker pull mysql:5.7   #下载指定版本的mysql镜像

2.4、删除镜像命令

docker rmi XXX   #删除镜像
docker rmi --help   #查看帮助
docker rmi -f [id、name....]   #通过id等删除

docker rmi -f $(docker images -aq)    #删除全部镜像命令

2.5、提交镜像命令(commit)

docker commit -a="作者" -m="提交的信息描述" 容器id 目标镜像名:[TAG]
#例子:
docker commit -a"ljy" aaa aaa01:1.0

3.容器命令

3.1、说明

我们有了镜像才可以创建容器!!!

3.2、新建容器并启动

docker run  [可选项] image
​
#可选项说明
--name="Name"   #容器名字
-d              #后台启动容器
-it           #交互方式 进入容器
-P            #指定容器端口(大P)-P 主机端口:容器端口(常用)
-P            #随机指定(小p)
​
# 测试    启动并进入容器
[root@Ljy01 ~]# docker run -it centos /bin/bash
[root@e66e15903e3a /]#
​
#退出容器并停止
exit
​
#退出容器但不停止容器运行
ctrl+p+q
​
[root@e66e15903e3a /]# exit
exit
[root@Ljy01 ~]# ^C
​
#进入容器命令
docker exec -it 容器名 /bin/bash
# 查看当前正在运行的容器
docker ps 

# 删除容器
docker rm 容器id
​
​
#启动容器
docker start id
​
#重启容器
docker restart id
​
#停止容器
docker stop id
​
​
#杀掉容器
docker kill id

三、练习:安装Nginx

1.搜索Nginx

docker search nginx

2.下载镜像

docker pull nginx

3.启动镜像

docker run -d --name nginx01 -p 3344:80 nginx
#  -d 代表使用后台启动
#  --name  代表我们自己给他的命名   这样如果我们启动多个nginx就可以区分
#  -p     设置一个端口
#  3344   代表外网的端口号
#  80    nginx默认的端口号
#  3344:80   这样写  我们就可以使用3344访问docker的80

4.测试

curl localhost:3344

注意:外网访问dockek 端口暴露

四、可视化

1.工具

1.1 portainer

是什么?是一个docker 图形化管理攻击

# 安装
[root@Ljy01 ~]# docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
​

2.2 rancher

Docker学习(第一阶段)相关推荐

  1. 《嵌入式入门学习第一阶段——C语言》

    嵌入式学习第一阶段(今日总结)2021/9/7 1.C语言的基础框架 #include<stdio.h> //预编译int main() //入口函数 {···return 0; //函数 ...

  2. Java学习第一阶段(1)

    JAVA学习第一阶段 前言 java 编程准备 第一个JAVA程序(Hello World) Hello World程序扩展(如何输入) 变量(连接上一个程序) 注意用法 import java.ut ...

  3. java实训报告前言_Java学习第一阶段总结

    0.前言: java第一阶段的学习已经过去了,这里针对第一阶段的三次作业进行总结 1.作业过程总结: (1)总结三次作业之间的知识迭代关系 ①第一次的作业相当基础,只有最主要的main函数,其余的内容 ...

  4. Vue学习 第一阶段

    Vue学习 一阶段 一.基础部分 一.简单了解 let---变量               const---常量  const的使用注意:  注意一:一旦给const修饰的标识符被赋值之后,不能修改 ...

  5. 2022黑马程序员-前端学习第一阶段(Day01-HTML的认知)

    HTML的认知-Day01 学习笔记打卡 HTML认知 基础概念铺垫(了解) 认识网页 五大浏览器和渲染引擎 Web标准(了解) HTML初体验 HTML的感知 HTML骨架结构 开发工具的使用 语法 ...

  6. Docker学习第一课 -- docker简介和和学习路线

    Docker是一个用于开发,交付和运行应用程序的开放平台.Docker使您能够将应用程序与基础架构分开,从而可以快速交付软件.借助Docker,您可以以与管理应用程序相同的方式来管理基础架构.通过利用 ...

  7. JAVA学习第一阶段模块三

    模块三 Java常用类库(上) 常用类 java.lang包,java虚拟机自动导入的 如System类.String类等 java.util包,java语言工具包 如Scanner类.Random类 ...

  8. JavaWeb的学习 -- 第一阶段 html

    基础定义:(了解) 超文本标记语言(英语:HyperText Markup Language,简称:HTML)是一种用于创建网页的标准标记语言.描述页面,包含HTML标签及文本内容. 您可以使用 HT ...

  9. 前端学习第一阶段——第五章 CSS(上)

    5-1 CSS基本选择器 01-CSS层叠样式表导读 02-CSS简介 03-体验CSS语法规范 04-CSS代码风格 05-CSS选择器的作用 06-标签选择器 07-类选择器 08-使用类选择器画 ...

最新文章

  1. 【Ubuntu】dpkg-deb -c :查看deb文件中的内容
  2. linux下activemq安装与配置
  3. 使用Query Object 模式 基于jpql实例
  4. python基础回顾
  5. 用VC6.0遇到的一个问题
  6. Windows:系统环境变量配置提示系统环境变量太大的问题三种解决方案亲测可用
  7. mysql数据结构参考书籍_mysql数据结构相关
  8. 提现接口网站 php,API提现接口
  9. vue项目中z-index不起作用(将vue实例挂在到window上面)
  10. CF #371 (Div. 2) C、map标记
  11. java将a对象转换为b对象_Java 对象的深复制五种方式
  12. python高级编程总结
  13. IO流使用示例,字符流文件拷贝demo
  14. java 文件递归_java 递归,打印文件夹下所有的文件
  15. kafka为什么用java重写,kafka怎么发布订阅 怎么在java中实现
  16. PFSense 2.1 端口映射配置
  17. java protected类_关于JAVA的protected类型
  18. 获取URl后的查询参数
  19. Dev C++下载安装
  20. matlab读取写音频文件

热门文章

  1. windows下安装redis5
  2. 如何在GitLab与GitHub中删除项目(仓库)
  3. freenas-nfs
  4. vi/vim复制粘贴命令
  5. 我所理解的设计模式(C++实现)——建造者模式(Builder Pattern)
  6. [转]让程序员跳槽的非钱原因
  7. 隐私计算头条周刊(8.14-8.20)
  8. 99乘法口诀表python语言代码_python 99乘法口诀表
  9. Qt CS架构 客户端代码编写技巧 QTcpSocket
  10. 机器学习03 K值的选择