Docker安装初试&&制作centos6.5基础镜像

简介: https://blog.tankywoo.com/docker/2014/05/08/docker-4-summary.

https://blog.tankywoo.com/docker/2014/05/08/docker-4-summary.html
https://yeasy.gitbooks.io/docker_practice/content/basic_concept/container.html
centos7.x系列的yum源中自带了docker的rpm包,安装比较简单
# yum install docker -y
安装过程中可能会遇到lvm2包依赖冲突,如不使用,卸载即可
# yum remove lvm2
启动服务
# service docker start
查看版本
# docker -v
Docker version 1.10.3, build d381c64-unsupported

获取BusyBox镜像
# docker pull busybox
创建容器并echo一句话
# docker run busybox /bin/echo Starting docker trip?
Starting docker trip?

centos6.x系列需要安装epel源,并且升级内核到3.10版本否则docker不能正常运行
基于git克隆安装https://github.com/llitfkitfk/docker-tutorial-cn

# git clone git://github.com/llitfkitfk/docker-tutorial-cn.git
# cd docker-tutorial-cn/
# ./docker_install.sh 
##执行此步骤如果报下文错误需要修改/etc/yum.repos.d/epel.repo文件,取消baseurl的注释,注释掉mirrorlist
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
# ./docker_config.sh  ##可根据实际情况修改docker image的储存路径,此处配置到/mnt/docker,默认路径是/var/lib/docker 
# mkdir /mnt/docker
# ./start_docker.sh   ##开启docker服务
docker: relocation error: docker: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 with link time reference
# yum upgrade device-mapper-libs   ##启动报错,需要安装依赖
# docker info         ##检查Docker是否正确安装
Containers: 0
Images: 0
Storage Driver: devicemapper
 Pool Name: docker-253:0-1182180-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 305.7 MB
 Data Space Total: 107.4 GB
 Data Space Available: 28.35 GB
 Metadata Space Used: 733.2 kB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.147 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.117-RHEL6 (2016-04-01)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 2.6.32-358.6.2.el6.x86_64
Operating System: 
CPUs: 12
Total Memory: 3.662 GiB
Name: localhost
ID: SAJR:3GXN:LA3H:XV3F:4WUS:PJNS:N7YI:IXS2:LCO2:J6WL:AMCV:AEBW

在docker index中搜索centos相关的image
# docker search centos
从docker registry server拉取centos镜像
# docker pull centos
创建一个运行bash应用的容器,一直报错,使用-d命令查看进行运行信息,发现内核版本过低

# docker run -i -t centos /bin/bash
Error response from daemon: Cannot start container 317bcef4837ad90112a9021012f243bdf92e594h file or directory
# docker -d
WARN[0000] You are running linux kernel version 2.6.32-358.6.2.el6.x86_64, which might be pgrade your kernel to 3.10.0.

于是升级内核到3.10 http: //my.oschina.net/denglz/blog/487332
安装kernel-lt(long-term)

# yum install http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
# yum --enablerepo=elrepo-kernel install kernel-lt -y

新安装的内核已经自动写入了grub.conf文件,只需修改Grub引导顺序,重启即可
# sed -i 's/default=1/default=0/' /etc/grub.conf

这里写图片描述
内核已经更新

# uname -a
Linux localhost.localdomain 3.10.102-1.el6.elrepo.x86_64 #1 SMP Tue Jun 14 11:40:50 EDT 20

列出images

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
centos              latest              d83a55af4e75        2 weeks ago         196.7 MB

使用centos这个镜像创建container进入交互模式,login shell是/bin/bash
这里写图片描述
Docker制作centos6.5基础镜像
http://blog.chinaunix.net/uid-20788636-id-4909654.html

# yum install febootstrap
# mkdir /dockerimg/centos6.5  创建镜像文件保存目录
# febootstrap -i bash -i wget -i yum -i iputils -i iproute -i man -i vim -i openssh-server -i openssh-clients -i tar -i p7zip -i net-tools  centos6.5 /dockerimg/centos6.5 http://vault.centos.org/6.5/os/x86_64/
-i指定安装的包     centos6.5标识OS版本
# cp /etc/skel/.bash* /dockerimg/centos6.5/root/
# cd /dockerimg/centos6.5
# tar -c .|docker import - centos6.5   导入镜像文件
63a8a89d802130fa35f0661402bf776069dcfd2cf83da553d4874c6a6c7ad056
# docker images   已经成功导入,使用docker run命令就可以基于centos6.5创建容器使用了
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
centos6.5           latest              63a8a89d8021        About a minute ago   372 MB
目录
相关文章
|
17天前
|
弹性计算 Ubuntu Linux
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS自动化部署。支持Ubuntu 22.04/20.04、CentOS 7.7-7.9及Alibaba Cloud Linux 3.2104 LTS。前提条件:ECS实例需运行中且有公网。步骤:选择Docker扩展并安装,验证成功通过命令`docker -v`查看版本号。
195 79
|
1月前
|
NoSQL 关系型数据库 应用服务中间件
docker基础篇:安装tomcat
docker基础篇:安装tomcat
166 64
|
4天前
|
前端开发 应用服务中间件 nginx
docker安装nginx,前端项目运行
通过上述步骤,你可以轻松地在Docker中部署Nginx并运行前端项目。这种方法不仅简化了部署流程,还确保了环境的一致性,提高了开发和运维的效率。确保按步骤操作,并根据项目的具体需求进行相应的配置调整。
45 25
|
5天前
|
存储 分布式计算 Hadoop
Centos7.9安装kerberos
Centos7.9安装kerberos
53 25
|
4天前
|
安全 数据安全/隐私保护 Docker
docker私有仓库harbor安装
通过以上步骤,您可以成功在企业内部安装和配置Harbor私有仓库,方便地管理和分发Docker镜像。Harbor不仅提供了基础的镜像管理功能,还增强了安全性、身份管理和审计功能,使其成为企业级容器镜像管理的理想选择。
42 22
|
12天前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
83 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
1天前
|
数据可视化 Linux 应用服务中间件
Centos7.9安装phpldapadmin
Centos7.9安装phpldapadmin
29 15
|
4天前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
21天前
|
NoSQL 关系型数据库 Redis
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
《docker高级篇(大厂进阶):1.Docker复杂安装详说》包括:安装mysql主从复制、安装redis集群
82 14
|
18天前
|
关系型数据库 MySQL 应用服务中间件
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis
68 7