#安装docker
yum -y install docker
systemctl start docker.service
systemctl status docker
systemctl enable docker
 
docker ps #查看启动的docker
docker ps -a  #查看所有docker
 
docker images  #查看镜像
 
docker search mysql  #搜索网络上的mysql
 
docker pull centos:7  #下载镜像
 
docker rmi centos:7     
docker rmi    ID             #删镜像
docker rm                      #删容器
 
docker run -it centos:7 /bin/bash  #启动容器
docker run -itd centos:7 /bin/bash #后台启动
mkdir test
 
#进入容器
docker exec -it 609bd39cdc18 /bin/bash
 
此时容器较镜像已经发生改变,我们以此生成新镜像
docker commit  0e60561500fc centos:7v1  #生成新的镜像
 
基于模板导出和导入镜像
docker save -o centos_7v1.tar centos:7v1
 
#把镜像传到客户端
scp centos_7v1.tar 192.168.182.140:/root   
 
#在客户端加载镜像
docker load -i centos_7v1.tar
docker run -it centos:7v1 /bin/bash #启动
 
创建dockerfile
mkdir 123   #在root下新建123
 
新建docker文件
#vim dockerfile 
FROM centos:7
RUN yum install -y tree
copy hello /root/
 
touch hello  #新建hello
 
docker build -t centos:7 /root/123/
或者:docker build -t centostest .       #创建镜像
build:创建镜像
-t:为镜像指定名字
.:指明 build context 为当前目录,我们也可以通过 -f 参数指定 Dockerfile 的位置
 
 
docker run -it  centos:7 /bin/bash  #启动检验
 
 
docker history id  
 
#创建dockerfile
FROM:指定 base 镜像。
MAINTAINER:设置镜像的作者,可以是任意字符串
WORKDIR:为后面的 RUN, CMD, ENTRYPOINT, ADD 或 COPY 指令设置镜像中的当前工作目录。
RUN:在容器中运行指定的命令,RUN 指令通常用于安装应用和软件包。
ADD:与 COPY 类似,从 build context 复制文件到镜像。不同的是,如果 src 是归档文件(tar, zip, tgz, xz 等),文件会被自动解压到 dest。
COPY:将文件从 build context 复制到镜像。
COPY 支持两种形式:
COPY src dest
COPY ["src", "dest"]
注意:src 只能指定 build context 中的文件或目录。
ENV:设置环境变量,环境变量可被后面的指令使用。例如:
... ENV MY_VERSION 1.3
RUN apt-get install -y mypackage=$MY_VERSION
 
mkidr docker1
cd docker1
touch tmpfile2
touch a b c
tar zcf test.tar.gz a b c 
 
vim dockerfile
#my dokerfile
FROM centos:7
MAINTAINER abc
WORKDIR /testdir
RUN touch tmpfile1
COPY ["tmpfile2","."]
ADD ["test.tar.gz","."]
ENV WELCOME "you are im my container.welcome!"
 
docker build -t centos_test:7 .   #创建镜像centos_test:7
 
docker images   #查看镜像
 
docker history ID  #查看centos_test的动作
docker run -it  0b02569e7874 /bin/bash #启动容器并查看
 
#删除未启动容器
for id in `docker ps -a | grep Exited | awk '{print $1}' `;do docker rm $id ;done  
for id in `docker ps -aq`;do docker rm -f $id;done
 
#以后台守护进程(Daemonized)形态运行 用-d参数实现
docker run -dti docker.io/centos:7
 
# 启动停止的容器
docker start 08bc41e77b01
 
#重启容器
docker restart 08bc41e77b01
 
#停止 容器
docker stop 08bc41e77b01
 
#进入容器
docker attach  08bc41e77b01
 
#查看容器日志
docker logs -f 9da0a7876f06
 
#暂停容器
docker pause 9da0a7876f06
 
#取消暂停继续运行容器
docker unpause 9da0a7876f06
 
导入和导出容器
a. 导出容器:导出一个已经创建的容器到文件,不管容器是否运行
#docker ps -a
假设当前系统中有两个处于运行和停止状态的容器
#docker export ID > *.tar
#ls
b.将容器导入系统成为镜像
#cat *.tar | docker import - test
 
#所有docker运行的相关文件
/var/lib/docker/
 
 
 
 
 
 
 
 
 
 
 

docker容器的基本命令的更多相关文章

  1. Docker容器入门-基本命令的使用

    目前容器技术使用相当广泛 不会或者没有使用过容器感觉都不像是个搞技术的 所以,我也就docker相关内容做一个整理 只有不断的学习,才能保持自己的竞争力 什么是容器? 容器是一种轻量级.可移植.自包含 ...

  2. Docker容器基本命令注意点

    Docker 容器基本命令注意点 前言: a. 本文主要为 Docker的视频教程 笔记. b. 本机环境为 Windows 10 专业版,使用的命令行为 PowerShell. 1. docker ...

  3. Docker基本命令与使用 —— Docker容器的网络连接(四)

    一.Docker容器的网络基础 通过ifconfig查看docker0的网络设备,docker守护进程就是通过docker0为docker的容器提供网络连接的各种服务. docker0是Linux虚拟 ...

  4. Docker容器中开始.NETCore之路

    一.引言 开始写这篇博客前,已经尝试练习过好多次Docker环境安装,.Net Core环境安装了,在这里替腾讯云做一个推广,假如我们想学习.练手.net core 或是Docker却苦于没有开发环境 ...

  5. Docker容器中开始.Net Core之路

    开始写这篇博客前,已经尝试练习过好多次Docker环境安装,.Net Core环境安装了,在这里替腾讯云做一个推广,假如我们想学习.练手.net core 或是Docker却苦于没有开发环境,服务器也 ...

  6. docker技术之基本命令

    我们使用基本命令之前,先来普及一下操作中使用的基本概念 镜像   image 容器   container 仓库   repository 镜像 Docker 镜像是一个特殊的文件系统,除了提供容器运 ...

  7. docker容器学习笔记

    docker是通过内核虚拟化技术来提供容器的资源隔离与安全保障. docker组成: docker client.docker server.docker组件(镜像(image).容器(contain ...

  8. 基于spring-boot和docker-java实现对docker容器的动态管理和监控[附完整源码下载]

    ​ (我是个封面) docker简介 Docker 是一个开源的应用容器引擎,和传统的虚拟机技术相比,Docker 容器性能开销极低,因此也广受开发者喜爱.随着基于docker的开发者越来越多,doc ...

  9. Linux环境基于CentOS7 搭建部署Docker容器

    1.Docker容器概述 区分Docker容器技术和VM虚拟机技术: evernotecid://394EFE90-9CE0-4D65-A8CD-DFEC0DC8061E/appyinxiangcom ...

随机推荐

  1. MySQL数据归档小工具推荐--mysql_archiver

    一.主要概述 MySQL数据库归档历史数据主要可以分为三种方式:一.创建编写SP.设置Event:二.通过dump导入导出:三.通过pt-archiver工具进行归档.第一种方式往往受限于同实例要求, ...

  2. 【命令】set命令

    1.查看所有的本地变量和环境变量. 2.检测变量是否定义: 开启检测功能: set -u  关闭检测功能:   set +u [root@localhost likui]# unset mm 删除了m ...

  3. python初学者-判断一个数是否为素数

    while True: #判断为真 num = int(input('请输入一个数:')) for i in range(2,num):#判断在num之前的数能不能把num整除 if(num%i == ...

  4. jsp页面技术总结

    1.日期框只能选择不能输入属性设置 data-options="editable:false" 2.列表中多出一列空白 .datagrid-view1{ width: 0px!im ...

  5. Linux操作系统的文件目录结构

    一 --- 导读 首先记住一句经典的话:"linux世界中,万事万物皆为文件" 二---linux的目录结构示意图和windows下的目录结构示意图(本图需要背诵) 三---各目录 ...

  6. ES6 对象拓展方法

    一,ES6 对象拓展方法 ES6为对象提供了一些拓展方法,下面列举几个比较常见的对象拓展方法.

  7. 实现Vue的多页签组件

    在之前的博客中  关于vue的多页面标签功能,对于嵌套router-view缓存的最终无奈解决方法  有写过vue的多页签功能的解决方案 可以看到我当时那个多页签的组件还是比较简单 的,只有打开跟关闭 ...

  8. keycloak集群化的思考

    目录 简介 keycloak中的集群 load balancing负载均衡 暴露客户端IP地址 sticky sessions 和 非sticky sessions shared databases ...

  9. 机器学习算法·KNN

    机器学习算法应用·KNN算法 一.问题描述 验证码目前在互联网上非常常见,从学校的教务系统到12306购票系统,充当着防火墙的功能.但是随着OCR技术的发展,验证码暴露出的安全问题越来越严峻.目前对验 ...

  10. Count PAT's (25) PAT甲级真题

    题目分析: 由于本题字符串长度有10^5所以直接暴力是不可取的,猜测最后的算法应该是先预处理一下再走一层循环就能得到答案,所以本题的关键就在于这个预处理的过程,由于本题字符串匹配的内容的固定的PAT, ...