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基础学习总结的更多相关文章

  1. 【补充】docker基础学习

    docker 基础知识 之前写了一篇docker未授权访问的文章,现在来补充一下docker基础知识,以便更好的学习docker上的漏洞. docker是一款轻量级的虚拟化的产品,它属于层级化的架构. ...

  2. Docker 基础学习(一)

    Docker官网:https://docker.com/ 中文翻译非常好的学习地址:http://dockerpool.com/static/books/docker_practice/index.h ...

  3. [Docker] docker 基础学习笔记3(共6篇)

    首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...

  4. [Docker] docker 基础学习笔记2(共6篇)

    febootstrap 是一个自制image的一个第三方的工具,好像他们现在都要用这个.   安装还是挺方便的. yum -y install febootstrap   febootstrap -i ...

  5. Docker基础学习相关网址

    中文学习地址:https://yeasy.gitbooks.io/docker_practice/content/ 官网介绍地址:https://www.docker.com 官网学习地址:https ...

  6. [Docker] docker 基础学习笔记6(共6篇)

    这个迁移指的是docker整个系统的迁移,而不是说images存储位置迁移 docker info 查看docker的各项配置   首先做文件的迁移 使用rsync软件将docker的文件夹整体迁移到 ...

  7. [Docker] docker 基础学习笔记5(共6篇)

    docker 配置文件的位置: centos : /etc/sysconfig/docker ubuntu: /etc/default/docker   现在比如我自己电脑上已经装好了docker,但 ...

  8. [Docker] docker 基础学习笔记1(共6篇)

    巩固一下yum: yum本身是centos自带的软件,可以删掉然后再重新安装. yum本身可以配置yum源,网络的,本地的都可以.之后安装docker需要配置一个扩展源.   从163的网址里边下载好 ...

  9. docker基础学习(一)

    操作演示: 1.查看一个容器的版本 [root@ELK-chaofeng08 ~]# docker version Client: Version: API version: 1.39 Go vers ...

  10. docker基础学习

    docker的定义: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...

随机推荐

  1. linux 环境下安装python3.7

    虽然Linux系统默认自带python环境但是比较老了,今天有需要刚好重新配置一下,其他版本同理!不局限于python3.7.0 终端下到python官网找到下载路径, 用wget下载py3.7 wg ...

  2. this,构造器,static,final,单例模式

    this关键字 在java中this是一个引用变量,即指向当前对象地址的引用(指针),→可以把this当作当前对象,便于更好的索引. this() 实际是调用了当前对象的构造器 1. 引用当前对象的属 ...

  3. B站login-极验逆向

    声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 目标网站 https:// ...

  4. Easysearch 压缩功能的显著提升:从 8.7GB 到 1.4GB

    引言 在海量数据的存储和处理中,索引膨胀率是一个不可忽视的关键指标.它直接影响了存储成本和查询性能.近期,Easysearch 在这方面取得了显著的进展,其压缩功能的效果远超过了之前的版本.本文将详细 ...

  5. 抖音验证签名和接口含中文签名,需要在发送端加上utf8编码

    抖音验证签名和接口含中文签名,需要在发送端加上utf8编码 抖音验签和抖音异步通知回调验签解决:是对整个接收的字符串做验签,而不是部分数据做验签解决中文参数问题,否则中文乱码报验签错误 签名算法htt ...

  6. Java代码规范及异常汇总 非空异常 NullPointerException

    Java规范及异常汇总1.java.lang.NullPointerException: nullorderReq.getId() != -1 修改为: orderReq.getId() != nul ...

  7. kong网关部署

    软件版本: Postgresql:9.6 (不使用最新版,是因为 konga 不支持) Kong:3.4.2 konga:0.14.7 (UI管理界面) ### Postgresql部署 ## doc ...

  8. ODPS 不用循环生成连续日期

    生成 20230801 ~ 20230831之间的每一天的sql代码怎么写? 只要一行代码. 一行代码: select TO_CHAR(DATEADD(TO_DATE(bizdate,'yyyymmd ...

  9. selenium窗口之间的切换

    import time from selenium.webdriver import Edge from selenium.webdriver.common.by import By from sel ...

  10. python 自动化神器 多平台纯代码RPA办公自动化python框架

    ​ Pyaibote是一款专注于纯代码RPA(机器人流程自动化)的强大工具,支持Android.Browser和Windows三大主流平台.无论您需要自动化安卓应用.浏览器操作还是Windows应用程 ...