Docker的学习记录

简介: Docker的学习记录

1.首先下载Docker (这里以windows 桌面版为例)
https://www.runoob.com/docker/windows-docker-install.html

2.下载docker后的命令操作
2.1.创建一个镜像(拉取)

docker pull nginx

2.2.查看在进程中的镜像

docker ps

2.3.查看所有的镜像

docker images

2.4.启动镜像

docker run -d -p 80:80 nginx (-d为不阻塞当前的进程,在后台执行,-p为端口配置 80外 :80内)

2.5.进入镜像(修改环境)

docker exec -it {{IMAGE_ID}} bash

2.6.退出镜像环境

exit

2.7.强制删除docker 容器和镜像

docker rm -f {{IMAGE_ID}}

docker rmi -f {{IMAGE_ID}}

2.8.复制镜像

docker commit {{IMAGE_ID}} {{NEW_IMAGE_NAME }}

2.9.liunx修改文件内容

echo hello > index.html >表示覆盖 >>表示追加

3.Dockerfile基础配置以及构建
基础的文件目录为下图:

配置:

FROM 必须,镜像源 eg: FROM alpine

WORKDIR :非必须,指定当下的shell语句运行在哪个目录下,如果没有则自动创建 eg: WORKDIR /app

COPY : 复制 eg: COPY src/ /app (src为复制源的当前目录 /app 为复制目标的目录,中间有空格)

ADD:添加 eg: ADD src/ /app (跟COPY的区别在于源地址不仅可以文件路径也可以是URL )

RUN : 执行shell 语句 eg: RUN echo 321 >> 1.text

CMD :执行shell语句 eg: CMD tail -f 1.text (tail -f 阻塞式) eg2:CMD cat 1.text

EXPOSE:指定暴漏端口

VOLUME: 指定映射到宿主机的目录下 eg:VOLUME /a/b

ENV:指定当前环境变量 eg: ENV A=10 输出: echo $A

ARG:环境变量(跟ENV的区别是ARG只在构建的时候有效(docker build),构建完成后,再执行就无效了,ENV一直有效)

在构建时可以使用 docker build -t test --biuld-arg A=10 . 来传递初始的全局变量

LABEL:指定一些源数据信息以 key="value"的形式,起到标实作用 eg:LABEL k="v" k1="v1"

ONBUILD:当前镜像构建的时候不会执行,基础当前的镜像的镜像构建的时候才会执行

SHELL :指定SHELL 一般指cmd和shell的切换 eg: SHELL /bin/sh (liunx) eg2:SHELL cmd (windows)

USER:用于指定RUN CMD等指令运行时的用户身份,不指定是root eg:USER node

另附:RUN和CMD区别:

两者都是用于执行命令,区别在于执行命令的时机不同,RUN命令适用于在 docker build 构建docker镜像时执行的命令,

而CMD命令是在 docker run 执行docker镜像构建容器时使用,可以动态的覆盖CMD执行的命令。

基础的Dockerfile文件:

FROM alpine

WORKDIR /app

RUN echo 321 >> 1.text

CMD cat 1.text

构建:docker build -t test . (-t意思为命名镜像,. 意思为Dockerfile在当前的目录下,可以理解为Dockerfile的位置)

参考视频:https://www.bilibili.com/video/BV1k7411B7QL

https://www.bilibili.com/video/BV1R4411F7t9

总结:两个准备 先下载docker 后写Dockerfile 两个命令 先build 后run

build:

docker build -t test .
复制代码
构建完之后可以 通过docker images 来查看是否创建镜像成功了

run:

docker run test
复制代码

作者: Bill 本文地址: http://biaoblog.cn/info?id=1616491560000

版权声明: 本文为原创文章,版权归 biaoblog 个人博客 所有,欢迎分享本文,转载请保留出处,谢谢!

相关文章
|
6月前
|
Java Go 虚拟化
【Docker 系列】docker 学习十一,docker 总结和面试题整理
【Docker 系列】docker 学习十一,docker 总结和面试题整理
|
12月前
|
Shell 应用服务中间件 Linux
|
12月前
|
Docker 容器
docker必备知识(一)
docker必备知识
201 0
|
测试技术 Linux 应用服务中间件
docker是什么?docker能干嘛?dcokerfile计划第一期
docker是什么?docker能干嘛?dcokerfile计划第一期
|
测试技术 Linux 持续交付
Docker笔记1 | Docker学习和简介
Docker笔记1 | Docker学习和简介
138 0
|
应用服务中间件 Linux Docker
docker学习日记(二):Docker的安装
1.Docker的基本组成: 镜像(image): docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像===》run===》t
63 0
|
运维 Docker 容器
docker学习日记(一):Docker基本介绍
1.比较Docker和虚拟技术的不同: 传统虚拟机,虚拟出一条硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件 容器内的应用直接运行在宿主机的内容,容器是没有自己的内核,也没有虚拟我们的硬件,所以就轻便了 每个容器是相互隔离,每个容器内部都有一个属于自己的文件系统,互不影响。
65 0
|
数据采集 Linux Shell
Docker学不会?不妨看看这篇文章
辰哥将在本文里详细介绍docker的各种使用命令,如:创建容器、拉取镜像、进入容器、搭建环境、退出容器、备份、恢复等。本文讲解了docker使用之后,确保大家都学会了docker,下篇推文将带大家如何去部署自己的python搭建的网站、爬虫程序等操作。’
158 0
Docker学不会?不妨看看这篇文章
|
运维 程序员 Linux
Docker 系列 _ 01_ 一念缘起
人们只有在经历过诸多痛苦之后,才会相信这“缘分”的存在。
94 0
Docker 系列 _ 01_ 一念缘起
|
Docker 容器
docker学习记录
学习整理记录
98 0