查找镜像
https://hub.docker.com/
search  --> centos7

一般docker 会有一个基础镜像,中间件镜像,应用镜像,生成一个镜像

docker build  通过dockerfile生成镜像
docker images  查看当前本地有哪些docker镜像
docker run 通过docker镜像生成docker容器(docker help run 查看run命令)
docker ps  查看正在up运行中的docker镜像,docker ps -a 查看所有的
docker exec 进入容器
docker rm   删除容器,-f 强制删除,up状态的也可以删除
docker stop  停止提一个容器
docker start  启动一个容器
docker tag   给镜像打标签(docker tag imageid name:tag)
docker rmi <image id>  删除images,通过image的id来指定删除谁




git clone https://git.oschina.net/99fu/security.git

docker 镜像地址  docker pull centos




dockerfile 是自动构建docker镜像的配制文件。

进入到git下,进入centos7目录下
docker build是用dockerfile生成docker镜像,每个add,生成一个docker layer
# docker build -t  fu/centos:7.0 .
-t 给镜像取名字

完整命令规则: docker build -t registry_url/namespace/imageName:version ./path  
(--如果没写vestion默契为latest最新的   .如果dockerfile在当前目录下,只用.就可以,否则加上dockerfile路径)

#docker run -it -d -p 2222:22 --name base fu/centos:7.0
-it 交互模式,前台启动
-d   后端其动,返回id号
-p   小p,如果用 9999:22,重启后还是用指定端口映射,如果占用,报错 
-P    大P,自动找无人使用的端口映射,如果服务器重启,就会随机用个别的端口映射
--name 给容器取个名字
fu/centos:7.0 用哪个镜像启动容器,如果容器在本地不存在,则远程pull,找不到则报错
Unable to find image 'csphere/centos7:7.1' locally
Pulling repository docker.io/csphere/centos7
docker: Error: image csphere/centos7:7.1 not found.
See 'docker run --help'.


docker exec -it website /bin/bash
exec 进入容器
-it 交互模式
容器名称
/bin/bash 
docker help 中可以看出attach 也可以进入容器中,但是试过会有卡死现象
exit退出,container 还是处于up状态
容器是基于基础镜像生成的容器,所以具有centos的命令

构建中间件镜像myslq
进入mysql 
docker build -t fu/mysql:5.4 .
生成镜像
docker images 查看当前本地镜像
启动 mysql的docker容器
docker run -d -p 3306:3306 --name dbserver fu/mysql:5.4
返回id串,成功
docker ps 
查看是否启动container成功
docker exec -it dbserver /bin/bash
进入container
mysql
进入db里,可用mysql指令操作啦
 show databases;
 
刚才启动,没有给环境变量,就是用户与密码,用的默订的

删除容器,再试一次。

docker rm 只能删除非up状态的
docker rm 

启动容器 docker run -d -p 3306:3306 -v host_dir:container_dir  imageName  (host_dir:container_dir 用于宿主机与容器挂载,数据同步)
docker run -d -p 3306:3306 -v /var/lib/docker/vfs/dir/mydata:/var/lib/mysql cephere/mysql:5.4   (未设置--name 则自动生成一个name)

通过docke exec -it  [docke 容器名称或id全或id前几位可区分即可] /bin/bash

这次创建mysql用户,然后删除容器,再次创建容器,指定到挂载目录,看数是否能将历史自动载入进来。
create database mydb;
show databases;
exit;
exit
查看一下,docker是否创健了指定的挂在目录。
ls /var/lib/docker/vfs/dir/mydata/
停掉容器 docker stop id
删除mysql容器,docker rm  id
再次查看,看挂载目录是否存在
ls /var/lib/docker/vfs/dir/mydata/

再次创建一个容器,指定到挂载的目录,确认数据是否能够回来
docker run -d -p 3306:3306 --name newdb -v /var/lib/docker/vfs/dir/mydata:/var/lib/mysql fu/mysql:5.4
 docker ps
 docker exec -it newdb /bin/bash
 mysql
 show databases;
 可以看到数据库还存在
 
 创建应用
 应用里加入一个Dockerfile 和 init.sh
 .dockerignore文件,可以过滤掉,不须要copy的文件
 
 
 show databases;
 
 启动应用容器
 docker run -d -p 80:80 --name wordpress -e WORDPRESS_DB_HOST=192.168.80.241 -e WORDPRESS_DB_USER=admin -e WORDPRESS_DB_PASSWORD=cephere2015 cephere/wordpress:4.2
 
 
 
 
 
 docker-compose up
 【
如果docker-compose --version 为无效指令,则须安装docker-compose  组合
#下载安装
curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
#授权
chmod +x /usr/local/bin/docker-compose
#查版本号
docker-compose --version
#当前目录构建组合镜像。须存在docker-compose.yml文件
docker-compose up -d
 】
 
 

docker 常用命令(*)的更多相关文章

  1. 关于Docker 常用命令

    Docker 常用命令 分类列一下常用的CLI命令 仓库相关 search/ pull / push / login etc. 例:docker pull ubuntu 从仓库下载ubuntuimag ...

  2. 【Docker】(3)---linux部署Docker、Docker常用命令

    linux部署Docker.Docker常用命令 本次部署Linux版本:CentOS 7.4 64位. 说明: 因为Docker是基于Linux 64bit的 所以Docker要求64位的系统且内核 ...

  3. Docker常用命令(二)

    Docker常用命令 查看Docker所有正在运行的容器 docker ps 查看Docker已退出的容器 docker ps -a 查看Docker所有镜像 docker images 删除镜像 删 ...

  4. Docker应用二:docker常用命令介绍

     Docker常用命令使用介绍 docker中常用的命令: 1.docker search image_name:搜查镜像 2.docker pull image_name:从镜像库中拉去镜像 3.d ...

  5. Docker常用命令汇总,和常用操作举例

    Docker命令 docker 常用命令如下 管理命令: container 管理容器 image 管理镜像 network 管理网络 node 管理Swarm节点 plugin 管理插件 secre ...

  6. 1021 docker常用命令和Jenkins搭建

    docker常用命令 1.镜像管理 docker pull (镜像名) # 默认拉取最新版本的镜像 docker pull (镜像名:版本号) #拉取指定版本的镜像 docker push (镜像名) ...

  7. Docker 常用命令——镜像

    Docker 常用命令 帮助命令 docker version    --版本信息 docker info       --详细信息 docker --help     --帮助 镜像命令 1.doc ...

  8. docker 常用 命令

    http://os.51cto.com/art/201409/451117.htm 2.1 在测试机启动容器,安装ssh docker run -i -t ubuntu /bin/bash #此方式运 ...

  9. Docker 常用命令总结

    Docker 常用命令总结   回到顶部 镜像相关 搜索 docker search *image_name* 下载 docker pull *image_name* 查看 docker images ...

  10. 宿主机 && docker 常用命令

    宿主机 && docker 常用命令 1.如果你想快速发现在该主机上使用最多资源的容器(或是最近的所有systemd服务),我推荐systemd-cgtop命令: 2.

随机推荐

  1. Bootstrap 4-alpha 初体验

    What is Bootstrap? 第一句话就是废话了,作为新时代有理想有节操的开发人员无人不知无人不晓.可能就是熟悉程度因为各种原因不尽相同,有人只是知道他大概是个什么东西,有些人可能基本可以使用 ...

  2. 让VIM支持Python2 by update-alternatives

    前言  Ubuntu 16+中$ sudo apt install vim所安装的vim只支持Python3,但很多插件如YCM和powerline均需要Python2,那就来场"生命贵在折 ...

  3. 使用C#,轻松发邮件之QQ邮箱

    参考来源 http://www.cnblogs.com/youring2/archive/2008/11/29/1343911.html

  4. 关于 ASP.NET MVC 中的视图生成

    在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...

  5. 学习EF之贪懒加载和延迟加载(2)

    通过昨天对EF贪婪加载和延迟加载的学习,不难发现,延迟加载还是很好用的,但是问题也就来了,有的时候我们只需要加载一个实体,不需要和他相关的外部实体,这时候我们来看看EF延迟加载时怎么作用的吧 打开pr ...

  6. 使用VS Code从零开始开发调试.NET Core 1.0

    使用VS Code 从零开始开发调试.NET Core 1.0. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code 全称是 Visual Studio Code,Visua ...

  7. Mybatis的choose when otherwise

    <select id="getCount" resultType="int"> select count(1) from <choose> ...

  8. java多态的理解

    面向对象语言中的类有三个特征,封装.继承.多态.封装与继承很好理解,那什么是多态呢? 1.什么是多态? 多态的定义:指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同 ...

  9. Hibernate4.2.4入门(二)——一对多的映射关系

    一.前言 前面我们已经学过hibernate的基础,学会增删改查简单的操作,然而我们数据库中存在着1对多,多对1,多对多的关系,hibernate又是基于ORM基础上的开源框架,可以让我们不用去编写S ...

  10. 12款简化 Web 开发的 JavaScript 开发框架

    前端框架简化了开发过程中,像 Bootstrap 和 Foundation 就是前端框架的佼佼者.在这篇文章了,我们编制了一组新鲜的,实用的,可以帮助您建立高质量的 Web 应用程序的 JavaScr ...