docker基础学习总结
docker是一个快速安装部署的容器,快捷简单、可以隔离是他的优点
docker也拥有仓库:dockerhub,存储和管理镜像的平台
我们利用docker安装时就是在里面下载镜像,镜像不仅包含应用本身,还包含了其所需要的环境,配置,系统函数库
命令解读
docker run -d \
--name mysql \
-p 3306:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
mysql
docker run创建并运行一个容器,-d让容器在后台运行
--name 为容器起名,唯一
-p 端口映射,将容器内的端口映射为机器上的端口,以便于外部链接(正常情况是不可以链接的)在集群的时候,宿主机的端口需保持唯一性,docker内的不需要
-e K=V环境变量
mysql 指定运行的镜像的名字 正常情况的命名规范是repository:tag(version,不写tag就是默认最新版本
常用命令
docker pull # 下载
docker push # 上传
docker images # 查所有镜像
docker rmi # 删除指定镜像
docker build # 构建镜像
docker save # 保存镜像,保存为一个压缩包?
docker load # 加载保存的镜像
docker run/rm # 创建并运行容器/删除容器
docker start/stop # 运行一个stop / 停止一个run/start
docker ps # 查看当前容器的状态
docker logs # 查看容器的日志
docker exec # 进入容器内部
数据卷volume 是一个虚拟目录:容器内目录与宿主内目录映射的桥梁
docker volume create # 创建数据卷
docker volume ls
docker volume rm
docker volume inspect # 查看数据卷详情
docker volume prune # 清除数据卷
docker run -v 数据卷:容器内目录 完成数据挂载,没有会自动创建,也就是说,创建完了的容器不能再挂载;当然,你在创建的时候不注明也会产生一个匿名卷(不建议使用匿名卷)

docker run -v 本地目录:容器内目录 可以直接实现本地目录挂载
注意:本地目录必须以./ 或者 / 开头,不然会被识别为数据卷
Dockerfile:文本文件,包含指令,用指令来说明要执行什么操作来构建镜像,以后docker可以通过dockerfile帮我们构建镜像
# 一些dockerfile的基本指令
from centos:7 # 指定基础镜像
env key value # 配置环境
copy ./a.jar /tmp # 拷贝本地目录到指定镜像目录
run # 执行shell命令,一般用于安装一些东西
expose 80 # 暴露端口,无实际作用
entrypoint java -jar a.jar # 镜像中应用启动的指令
docker build -t 镜像名:tag .(这个是指定dockerfile所在的目录,如果是在当前目录,那就用.)
dockercompose:通过一个单独的docker-compose.yml模板定义一组相关联的容器,实现快速部署
docker compose [options] [command]
options:
-f 指定compose的路径和名称
-p 指定project的名称(有默认 root-xx commands:
up down ps logs stop start restart top(查看运行的进程) exec
docker基础学习总结的更多相关文章
- 【补充】docker基础学习
docker 基础知识 之前写了一篇docker未授权访问的文章,现在来补充一下docker基础知识,以便更好的学习docker上的漏洞. docker是一款轻量级的虚拟化的产品,它属于层级化的架构. ...
- Docker 基础学习(一)
Docker官网:https://docker.com/ 中文翻译非常好的学习地址:http://dockerpool.com/static/books/docker_practice/index.h ...
- [Docker] docker 基础学习笔记3(共6篇)
首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...
- [Docker] docker 基础学习笔记2(共6篇)
febootstrap 是一个自制image的一个第三方的工具,好像他们现在都要用这个. 安装还是挺方便的. yum -y install febootstrap febootstrap -i ...
- Docker基础学习相关网址
中文学习地址:https://yeasy.gitbooks.io/docker_practice/content/ 官网介绍地址:https://www.docker.com 官网学习地址:https ...
- [Docker] docker 基础学习笔记6(共6篇)
这个迁移指的是docker整个系统的迁移,而不是说images存储位置迁移 docker info 查看docker的各项配置 首先做文件的迁移 使用rsync软件将docker的文件夹整体迁移到 ...
- [Docker] docker 基础学习笔记5(共6篇)
docker 配置文件的位置: centos : /etc/sysconfig/docker ubuntu: /etc/default/docker 现在比如我自己电脑上已经装好了docker,但 ...
- [Docker] docker 基础学习笔记1(共6篇)
巩固一下yum: yum本身是centos自带的软件,可以删掉然后再重新安装. yum本身可以配置yum源,网络的,本地的都可以.之后安装docker需要配置一个扩展源. 从163的网址里边下载好 ...
- docker基础学习(一)
操作演示: 1.查看一个容器的版本 [root@ELK-chaofeng08 ~]# docker version Client: Version: API version: 1.39 Go vers ...
- docker基础学习
docker的定义: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...
随机推荐
- RDP 端口转发 多窗口运行
需要设置本机的默认端口进行修改 优点:(1)部署简单.Windows自带,支持IPv4和IPv6(2)不用重启机器,还长记性.命令即时生效,重启系统后配置仍然存在.缺点:(1)不支持UDP(2)XP/ ...
- 《iOS面试之道》-“串行队列的代码实战” 勘误
一.原书第一版154页开始讲解串行队列.并发队列.以及在Dispatch_Async.Dispatch_Sync下面的作用 最后一段代码: if(_q == NULL) { _q = dispatch ...
- 基于Vue的二进制时钟组件 -- fx67llBinaryClock
fx67llClock Easy & Good Clock ! npm 组件说明 一个基于Vue的二进制时钟组件,没什么卵用,做着好玩,可以方便您装饰个人主页 使用步骤 npm install ...
- 通过Webpack搭建react
安装解析react的相关babel和插件 nmp i -D babel-loader @babel/core @babel/preset-react @babel/preset-env 进行loade ...
- VMware搭建集群环境
集群地址分配 名称 IP 子网掩码 网关 DNS flink01 192.168.22.211 255.255.255.0 192.168.22.2 114.114.114.114 flink02 1 ...
- java springboot 指定运行端口
java springboot 指定运行端口 方法1: 修改源代码里的"\src\main\resources\application.properties" 文件,增加或修改 s ...
- 如何判断APP页面是原生还是H5
如何判断APP页面是原生还是H5 1.打开设置,搜索"开发者选项",点击"开发者选项" 华为手机进入开发者模式方法 1.打开华为手机的[设置],找到并点击进入[ ...
- FEL - Fast Expression Language
开源好用的表达式计算语言FEL,可惜了官网文档不在国内,我来copy个过来. Fel是轻量级的高效的表达式计算引擎 Fel在源自于企业项目,设计目标是为了满足不断变化的功能需求和性能需求. Fel是开 ...
- Asp.net Core Flurl.Http 结合IHttpClientFactory管理HttpClient生命周期
Asp.net Core, 在我用过的多种Http REST 客户端: RestSharp WebApiClient Refit Flurl 中,Flurl可以说是最符合我口味的,用起来那可真的顺滑无 ...
- springboot支持http2
现在http/3都出来了,但是很多项目还是没有采用https,这个是说不过去的. http3在2022/06/06 正式发布,具体见https://www.163.com/dy/article/H9B ...