DockerFile与Docker常用安装
2019-04-12 19:55
525 查看
DockerFile是什么
DockerFile是用来构建镜像的构建文件,是由一系列命令和参数构成的脚本。
构建三步骤:
- 编写DockerFile文件
- docker build
- docker run
docker体系结构(保留字指令):
- FROM:基础镜像,当前新镜像基于哪个镜像
- MAINTAINER:镜像维护者的姓名和邮箱地址
- RUN:容器构建时需要运行的命令
- EXPOSE:当前容器对外暴露出的端口
- WORKDIR:指定在创建容器后,终端登录进来时的目录
- ENV:用来在构建镜像过程中设置环境变量
- ADD:将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包
- COPY:类似ADD,拷贝文件和目录到镜像中。将从构建上下文目录中<源路径>的文件/目录复制到新的一层的镜像内的<目标路径>位置
- VOLUME:容器数据卷,用于数据保存和持久化工作
- CMD:指定一个容器启动时要运行的命令。DockerFile中可以有多个CMD指令,但只有最后一个生效,CMD会被docker run之后的参数替换
- ENTRYPOINT:指定一个容器启动时要运行的命令。ENTRYPOINT的目的和CMD一样,都是指定容器启动程序和参数
- ONBUILD:当构建一个被继承的DockerFile时运行命令,父镜像在被子继承后父镜像的onbuild被触发
Docker常用安装
总体步骤:
- 搜索镜像
- 拉取镜像
- 查看镜像
- 启动镜像
- 停止容器
- 移除容器
docker安装mysql
docker search mysql docker pull mysql:5.7 docker run -p 12345:3306 --name mysql -v /fatal/mysql/conf:/etc/mysql/conf.d -v /fatal/mysql/logs:/logs -v /fatal/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=1234 -d mysql:5.7 docker exec -it 容器id /bin/bash docker exec 容器id sh -c 'exec mysqldump --all-databases -uroot -p"密码"' > /fatal/all-databases.sql (备份docker中mysql的数据)
docker安装redis
docker pull redis:4.0 docker run -p 6379:6379 -v /fatal/myredis/data:/data -v /fatal/myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf -d redis:4.0 redis-server /usr/local/etc/redis/redis.conf --appendonly yes (appendonly是数据持久化存储) docker exec -it 容器id redis-cli
本地镜像发布到阿里云
镜像的生成方法:1.前面的DockerFile 2.从容器创建一个新的镜像
docker commit [OPTIONS] 容器id
$ sudo docker login --username=fatalblows registry.cn-hangzhou.aliyuncs.com $ sudo docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/fatal/mycentos:[镜像版本号] $ sudo docker push registry.cn-hangzhou.aliyuncs.com/fatal/mycentos:[镜像版本号]
从阿里云拉镜像下来:docker pull xxxxxxxxxx
相关文章推荐
- centos7下安装docker(dockerfile常用的指令)
- docker常用命令总结——安装、镜像、容器基本操作
- win7安装docker报错:error during connect: Get http ..... the system cannot find the file specified
- CentOS6.5安装Docker,常用命令
- Docker(二十三)alpine 安装常用shell 命令
- docker安装lnmp具体实例以及常用的docker命令
- 【Dockerfile】Ubuntu中Docker通过Dockerfile构建常用的基础环境
- docker筑基篇-05-Dockerfile常用指令
- Docker的安装和使用及dockerfile简单使用
- docker compose安装与常用命令介绍 及使用docker-compose运行一个进销存管理系统
- Docker 安装、常用命令
- Dockerfile常用命令
- Dockerfile基于最小化选择性安装服务的2种方法
- Ubuntu下安装Docker,及Docker的一些常用命令操作
- docker学习二--安装及常用命令
- Docker:Docker思想&解决问题&Docker优势&Docker基本概念&Docker安装&基本设置&常用命令&网络管理&数据卷&构建自定义镜像&多容器管理
- Dockerfile 在创建的镜像中安装命令
- docker的安装以及常用命令
- Docker介绍 安装 常用工具
- docker 安装及常用命令