Docker的一些基本配置以及基本的配置

来源:互联网 发布:raysource是什么软件 编辑:程序博客网 时间:2024/05/18 00:33
 Ubuntu14.04版本下Docker的安装过程



1查看内核的版本号(内核版本必须是3.8以上,系统必须是64位)

2apt-get update && apt-get upgrade -y 系统更新然后重启下

3安装dockerwget -qO- https://get.docker.com/ | sh


4docker pull ubuntu 从注册服务器仓库下载镜像

5利用Dockerfile来创建镜像
首先先建立一个目录和一个Dockerfile
# mkdir sinatre
                                                                                   # cd sinatra/
# vi Dockerfile文件其中添加一行
FROM ubuntu:14.04·这就表示是从注册公共的仓库去下一个ubuntu系统

6编写完成后 可使用docker build 来生成镜像
docker build -t="名称(registry.hub.docker.com上创建的用户名称,因为这样可以把自己生成的镜像给上传到自己的私有仓库):TAG" .

7上传镜像 上传到自己的仓库以便以后在使用时方便用首先在registry.hub.docker.com 创建一个用户    
然后在shell中登录docker注册的用户  docker login  之后输入密码 email
8导出镜像到本地docker save -o  导到本地的名字.tar | 镜像的:TAG

9载入镜像docker load --input 导到本地的名字.tar

10移除本地镜像 docker rmi 镜像的名字docker rm 是移除容器   加-f参数的时候是删除正在运行中的容器

11导出容器快照docker export 容器ID  > 名称.tar

12导入容器快照cat 名称.tar | docker import - 随便的名称/随便的版本

13docker import 来导入一个容器快照到本地镜像库   缺点就是丢失所有的历史记录数据和元数据信息
dokcer load 导入镜像存储文件到本地镜像库保存文件完整的记录  缺点就是体积大



        Docker数据管理

·数据卷
特性:
1,数据卷可以在容器之间共享和重用
2,对数据卷的修改会立马生效
3,对数据卷的更新不会影响镜像
4,卷会一直存在,直到没有容器使用

创建一个数据卷
docker run -d -P --name 名字 -v /webapp 镜像 python app.py   创建一个名字的容器,并且加载一个数据卷到容器的/webapp目录下 调用python的app.py
-v 标记来创建一个数据卷并且挂在到容器里
挂载一个主机目录作为数据卷
docker run -d -P --name 名字 -v 宿主机的目录:容器目录   镜像  python app.py
挂载一个本地文件作为数据卷
docker run -it --rm -v ~/.bash_history:/.bash_history 镜像  /bin/bash--rm容器终止后会立即删除


·数据卷容器
如果你有持续更新的数据需要在容器间共享,最好创建数据卷容器
创建一个命名的数据卷容器dbdata
docker run -d -v /dbdata --name  镜像 /bin/bash

然后在其他容器中使用--volumes-from来挂载容器中的数据卷

docker run -d --volumes-from dbdata --name db1 镜像的名字


 自定义网桥   其中brctl需要安装  apt-get install bridge-utils

serivce docker stop 先停止docker的服务
ip link set dev 宿主机上的网桥名称 down
brctl delbr 宿主机上的网桥名称        删除网桥 

然后创建一个网桥

brctl addbr bridge0
ip addr add 192.168.11.1/24 dev bridge0
ip link set dev bridge0 up 

然后配置docker的配置文件

echo 'DOCKER_OPTS="-b=bridge0" ' >>/etc/default/docker
然后启动服务   service docker start 


查看某个容器的进程PID   docker inspect -f '{{.State.Pid}}'  然后后面跟上某个容器的ID号


docker启动不了的时候   docker daemon & 就可以了
1 0
原创粉丝点击