ubuntu安装docker

本文介绍了Docker的安装方法,包括使用官方脚本安装及从源码编译安装的过程。对于源码编译安装,文章特别针对特殊网络环境给出了详细的步骤说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。利用Linux的LXC、AUFS、Go语言、cgroup实现了资源的独立,可以很轻松的实现文件、资源、网络等隔离,其最终的目标是实现类似PaaS平台的应用隔离。

docker需要64位系统并且内核版本至少为3.10.x,如果内核低于3.10.x需要先升级内核,并且内核包含了aufs模块。
查看当前内核版本

uname -r 
3.19.0-15-generic

查看内核是否安装aufs模块

grep aufs /proc/filesystems
nodev   aufs

官方脚本安装

sudo curl -sSL https://get.docker.com/ | sh
docker version

编译安装

通过文档和代码了解到docker官方推荐的是在docker本身的容器里面搭建环境和编译,官方给出的是一个基于ubuntu的dockerfile。所以要先安装docker。

#由于docker是由golang语言写的,源码管理是用Git,所以需要先安装git,golang,make
sudo git clone https://github.com/docker/docker.git
cd docker
#查看已经存在的tag
git tag
git checkout -b v1.8.0  

如果访问外国网速比较慢的话,编辑Dockerfile文件。

#更换apt-get源为http://mirrors.163.com
RUN apt-get install -y curl && rm /etc/apt/sources.list && curl http://mirrors.163.com/.help/sources.list.trusty -o /etc/apt/sources.list 
#安装ubuntu-zfs和libzfs-dev时需要保留
RUN     apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys E871F18B51E0147C77796AC81196BA81F6B0FC61
RUN     echo deb http://ppa.launchpad.net/zfs-native/stable/ubuntu trusty main > /etc/apt/sources.list.d/zfs.list
#更换lxc源为github
ENV LXC_VERSION 1.1.2
RUN  git clone https://github.com/lxc/lxc.git /usr/src/lxc/ 
RUN cd /usr/src/lxc \
&& git checkout -b lxc-${LXC_VERSION} \
    && ./configure \
    && make \
    && make install \
    && ldconfig
#更换golang源为golang中国http://www.golangtc.com/
ENV GO_VERSION 1.4.2
RUN curl  http://www.golangtc.com/static/go/go${GO_VERSION}.src.tar.gz | tar -v -C /usr/local -xz \
    && mkdir -p /go/bin
ENV PATH /go/bin:/usr/local/go/bin:$PATH
ENV GOPATH /go:/go/src/github.com/docker/docker/vendor
RUN cd /usr/local/go/src && ./make.bash --no-clean 2>&1
#更换ruby的gem源为https://ruby.taobao.org
# TODO replace FPM with some very minimal debhelper stuff
RUN gem sources --remove https://rubygems.org/ \
  && gem sources -a https://ruby.taobao.org/ \
&& gem install --no-rdoc --no-ri fpm --version 1.3.2

# Download man page generator
#删除-b切换分支,安装过程出现错误
git clone  https://github.com/cpuguy83/go-md2man.git 
git clone  https://github.com/russross/blackfriday.git 
make build && make binary
#编译生成的文件在
./bundles/1.9.0-dev/binary/docker-1.9.0-dev

cp ./bundles/1.9.0-dev/binary/docker-1.9.0-dev /usr/bin/docker

#安装apparmor和cgroup-lite
sudo apt-get install -y apparmor
sudo apt-get install -y cgroup-lite

https://docs.docker.com/
https://github.com/docker/docker
手动编译安装docker环境
如何在”特殊”的网络环境下编译 Docker

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值