参考资源:

http://blog.csdn.net/kongxx?viewmode=contents

http://my.oschina.net/feedao/blog

==============================

  • 运行环境

win8.1 + virtual box, 运行 centos6.4 64bit, 内网通过代理上网。

如下操作基本都在root下进行。

  • 目的

尝试自己建立Docker镜像

  • 基础工作

1,阿里云镜像

执行如下脚本,将资源镜像执行阿里云

#!/bin/bash
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
yum makecache

在windows下编辑后,回车换行符需要替换

使用dos2unix命令

$ dos2unix -k sample.txt

2,wget上网代理

root用户

增加/root/.wgetrc 文件,定义代理服务器及用户名密码

http-proxy=proxy_ip:port
https-proxy=proxy_ip:port
ftp-proxy=proxy_ip:port
proxy-user=username
proxy-passwd=password

重新登录一下

联网不使用代理时使用 --no-proxy 参数

  • Docker ubuntu 镜像制作

1,安装docker

对于CentOS6,可以使用EPEL库安装Docker,命令如下

# yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
# yum install docker-io

安装之后启动Docker服务,并让它随系统启动自动启动。

# service docker start
# chkconfig docker on

2,安装工具debbootstrap

yum -y install debootstrap

3,编写自己的Dockerfile,以ubuntu 14.04 ssh为例: *在docker build 时使用

# 选择一个已有的os镜像作为基础
FROM ubuntu# 镜像的作者
MAINTAINER Leonard Tian "leonard.tianlb@gmail.com"# 安装openssh-server和sudo软件包,并且将sshd的UsePAM参数设置成no
RUN apt-get install -y openssh-server sudo
RUN sed -i 's/UsePAM yes/UsePAM no/g' /etc/ssh/sshd_config# 添加测试用户tianlb,密码123456,并且将此用户添加到sudoers里
RUN useradd tianlb
RUN echo "tianlb:123456" | chpasswd
RUN echo "tianlb   ALL=(ALL)       ALL" >> /etc/sudoers# 下面这两句比较特殊,在centos6上必须要有,否则创建出来的容器sshd不能登录
# RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
# RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key# 启动sshd服务并且暴露22端口
RUN mkdir /var/run/sshd
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

注意Dockerfile文件的首字母大写

将镜像源转换为阿里云的,参考1.阿里云镜像

4, 创建image

debootstrap --arch amd64 --include=vim,openssh-server,openssh-client trusty ubuntu-trusty http://mirrors.aliyun.com/ubuntu/
cd ubuntu-trusty
tar -c . | docker import - ubuntu1404-base
# docker build -t ubuntu1404-ssh .

* docker build 目前有问题

查看docker image

# docker images

  REPOSITORY     TAG   IMAGE ID   CREATED         VIRTUAL SIZE
  ubuntu1404-base  latest 6457f5dac973 About an hour ago   287.5 MB

5, 创建容器

docker run -t -i ubuntu1404-base /bin/bash

直接进入容器,可以进行基本操作,如ls等。

6,  异常处理

Docker在CentoOS6运行一个容器的时候出现下面的错误

# docker run -i -t ubuntu1404-base /bin/bash
unable to remount sys readonly: unable to mount sys as readonly max retries reached

碰到这个问题需要修改Docker的配置参数把/etc/sysconfig/docker文件中的other-args更改为:

other_args="--exec-driver=lxc --selinux-enabled"

然后重新启动Docker服务

sudo /etc/init.d/docker restart

7, 其他命令

#查看docker容器,及状态
docker ps -a
#启动容器
docker start ID
#停止容器
docker stop ID
#删除容器
docker rm ID

--End--

转载于:https://www.cnblogs.com/rakuhin/p/3997903.html

Docker学习笔记1 :镜像制作相关推荐

  1. docker学习笔记2--docker镜像命令

    常用命令: login/logout pull push search Images tag rmi save load import 具体用法如下: login/logout: docker log ...

  2. Docker基础03--Dockerfile详解与镜像发布--(狂神说docker学习笔记)

    文章目录 1. Dockerfile介绍 2. Dockerfile指令说明 3. 制作Centos镜像 3.1 编写Dockerfile的文件 3.2 通过这个文件构建镜像(注意最后加个点!!!) ...

  3. Docker笔记——jdk镜像制作

    Docker笔记--jdk镜像制作 openjdk镜像依赖如下: openjdk:8-jdk -> buildpack-deps:jessie-scm -> buildpack-deps: ...

  4. docker学习笔记(三)镜像

    参考:汤小洋老师的教学视频 docker学习笔记(一)[docker 介绍.卸载.安装.配置加速] docker学习笔记(二)docker常用命令 docker学习笔记(四)使用docker搭建环境 ...

  5. 随笔——Docker学习笔记

    Docker学习笔记 一.Docker 安装 二.Docker常用命令 注意事项 1.删除容器 2.删除镜像 3.容器中命令 4.容器的生命周期 5.Dockerfile构建镜像 6.docker两个 ...

  6. Docker:学习笔记(1)——基础概念

    Docker:学习笔记(1)--基础概念 Docker是什么 软件开发后,我们需要在测试电脑.客户电脑.服务器安装运行,用户计算机的环境各不相同,所以需要进行各自的环境配置,耗时耗力.为了解决这个问题 ...

  7. Docker学习笔记 之 Docker安装配置使用

    简介 Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare met ...

  8. docker学习笔记(四)使用docker搭建环境

    参考:汤小洋老师的教学视频 docker学习笔记(一)[docker 介绍.卸载.安装.配置加速] docker学习笔记(二)docker常用命令 docker学习笔记(三)镜像 docker学习笔记 ...

  9. docker学习笔记(二)docker常用命令

    参考:汤小洋老师的教学视频 docker学习笔记(一)[docker 介绍.卸载.安装.配置加速] docker学习笔记(三)镜像 docker学习笔记(四)使用docker搭建环境 docker学习 ...

  10. docker学习笔记(五)如何创建自己的阿里云镜像仓库(这是2021版的阿里云教程)

    参考:汤小洋老师的教学视频 docker学习笔记(一)[docker 介绍.卸载.安装.配置加速] docker学习笔记(二)docker常用命令 docker学习笔记(三)镜像 docker学习笔记 ...

最新文章

  1. Linux_PXE服务器_RHEL7
  2. spoj BCEASY - Bottom Coder (Easy)
  3. 谷歌chrome浏览器的源码分析(七)
  4. python mysql curros.executemany 批量添加
  5. 芯片:设计、制造、封测
  6. JAVA进阶级开发之(Array工具类)
  7. 推荐系统国内外团队介绍
  8. Xilinx Artix-7 Aurora调试过程中遇到的问题
  9. Windows下secureCRT、putty使用秘钥登录Linux
  10. 文件上传---利用表单提交
  11. 倒计时1周!聚焦金融科技,Gdevops北京站即将启程
  12. 快速构建Windows 8风格应用9-竖直视图
  13. 个性化音乐推荐系统 协同过滤推荐算法在在线音乐播放系统中的应用 基于用户/项目的协同过滤推荐算法 混合协同过滤推荐算法 协同过滤混合推荐算法 代码实现开发 程序实现开发
  14. Vivado2018使用教程
  15. 国际人工智能领域著名科学家,受聘同济大学名誉教授
  16. python requests simplejson.errors.JSONDecodeError: Expecting value报错
  17. 让ppsx幻灯片进入可编辑状态
  18. Vue中 使用vue-particles(粒子背景)插件美化登录页面
  19. url中的20%、22%、26%、7B%、%7D、28%、29%怎么解析还原成真实的字符
  20. html vw布局,完美的响应式布局vw+vh+rem屏幕适配方案!

热门文章

  1. [pytorch、学习] - 5.4 池化层
  2. Java Web Jsp
  3. Python之NumPy(axis=0 与axis=1)区分
  4. 从excel表中生成批量SQL,将数据录入到数据库中
  5. AlienVault Ossim各版本镜像下载地址
  6. QMouseEvent 的坐标__Win
  7. Restful HMAC认证
  8. [AX]AX2012开发新特性-全文索引
  9. linux内核中的循环缓冲区
  10. 浅谈OpenCV[轉]