教你如何在云服务器上体验Docker服务!

1. 添加Docker repository key

sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -"

2. 添加Docker repository,并安装Docker
sh -c "echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
apt-get update
apt-get install lxc-docker
3. 检查Docker是否已安装成功

docker version

基本使用

1.安装 ubuntu 镜像

docker pull ubuntu
开始下载 ubuntu 镜像, 大概需要10分钟左右

Pulling repository ubuntu
9cbaf023786c: Pulling dependent layers
a9561eb1b190: Pulling dependent layers
195eb90b5349: Pulling dependent layers
2185fd50e2ca: Pulling dependent layers
c5881f11ded9: Pulling dependent layers
463ff6be4238: Pulling dependent layers
3db9c44f4520: Pulling dependent layers
511136ea3c5a: Download complete
500cae81e00f: Downloading [=========================================>         ] 58.63 MB/70.36 MB 1m6s

查看一下当前的镜像列表

docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu              14.10               2185fd50e2ca        2 days ago          237.2 MB
ubuntu              utopic              2185fd50e2ca        2 days ago          237.2 MB
ubuntu              14.04               9cbaf023786c        2 days ago          192.8 MB
ubuntu              14.04.1             9cbaf023786c        2 days ago          192.8 MB
ubuntu              trusty              9cbaf023786c        2 days ago          192.8 MB
ubuntu              latest              9cbaf023786c        2 days ago          192.8 MB
ubuntu              12.04.5             a9561eb1b190        2 days ago          120.2 MB
ubuntu              precise             a9561eb1b190        2 days ago          120.2 MB
ubuntu              12.04               a9561eb1b190        2 days ago          120.2 MB
ubuntu              12.10               c5881f11ded9        3 months ago        172.2 MB
ubuntu              quantal             c5881f11ded9        3 months ago        172.2 MB
ubuntu              13.04               463ff6be4238        3 months ago        169.4 MB
ubuntu              raring              463ff6be4238        3 months ago        169.4 MB
ubuntu              saucy               195eb90b5349        3 months ago        184.7 MB
ubuntu              13.10               195eb90b5349        3 months ago        184.7 MB
ubuntu              10.04               3db9c44f4520        5 months ago        183 MB
ubuntu              lucid               3db9c44f4520        5 months ago        183 MB

执行一个命令

docker run ubuntu:12.10 ls -lh /
total 68K
drwxr-xr-x   2 root root 4.0K Oct 16  2012 bin
drwxr-xr-x   2 root root 4.0K Oct  9  2012 boot
drwxr-xr-x   4 root root  340 Oct 16 15:51 dev
drwxr-xr-x  44 root root 4.0K Oct 16 15:51 etc
drwxr-xr-x   2 root root 4.0K Oct  9  2012 home
drwxr-xr-x  11 root root 4.0K Oct 16  2012 lib
drwxr-xr-x   2 root root 4.0K Oct 16  2012 lib64
drwxr-xr-x   2 root root 4.0K Oct 16  2012 media
drwxr-xr-x   2 root root 4.0K Oct  9  2012 mnt
drwxr-xr-x   2 root root 4.0K Oct 16  2012 opt
dr-xr-xr-x 128 root root    0 Oct 16 15:51 proc
drwx------   2 root root 4.0K Oct 16  2012 root
drwxr-xr-x   5 root root 4.0K Oct 16  2012 run
drwxr-xr-x   2 root root 4.0K Jun 18 21:54 sbin
drwxr-xr-x   2 root root 4.0K Jun 11  2012 selinux
drwxr-xr-x   2 root root 4.0K Oct 16  2012 srv
dr-xr-xr-x  13 root root    0 Oct 16 15:51 sys
drwxrwxrwt   2 root root 4.0K Oct 16  2012 tmp
drwxr-xr-x  11 root root 4.0K Oct 16  2012 usr
drwxr-xr-x  14 root root 4.0K Oct 16  2012 var
2.登录到 docker 里面去
docker run -i -t ubuntu:12.10 /bin/bash
root@bb55c85e1b34:/# uname -a
Linux bb55c85e1b34 3.5.0-52-generic #78~precise1-Ubuntu SMP Wed Jun 11 17:14:53 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

root@bb55c85e1b34:/# ip addr
25: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
26: eth0: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 12:6d:9c:14:76:82 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.9/16 scope global eth0
    inet6 fe80::106d:9cff:fe14:7682/64 scope link
       valid_lft forever preferred_lft forever
3.安装 openssh-server

ubuntu 默认的源在腾讯云主机上无法访问, 所以要把源改成腾讯云的源, 登录到 docker 里面去发现里面连 vi 编辑器都没有, 没办法, 只能把主机的文件映射到 docker 里面去, 然后 cp

下面的命令把主机的 /etc 映射到 docker 的/opt/etc 目录, 并且运行 bash

docker run -i -t -v /etc:/opt/etc ubuntu:12.10 /bin/bash
进入 docker 后把主机的 sources.list 文件 copy 过去, 在 docker 里面执行下面的命令

cp /etc/apt/sources.list /etc/apt/sources.list.bak
cp /opt/etc/apt/sources.list /etc/apt/sources.list

然后再执行 apt 命令安装就没有问题了

apt-get install -y vim openssh-server
设置个 ROOT 密码

root@fc9fe30c21bc:/# passwd
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

查看下 docker 的ip

root@fc9fe30c21bc:/# ip addr
43: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
44: eth0: <BROADCAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether e2:b9:5a:f8:d5:a1 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.15/16 scope global eth0
    inet6 fe80::e0b9:5aff:fef8:d5a1/64 scope link
       valid_lft forever preferred_lft forever

启动 ssh

root@7e3adf35663f:/# /etc/init.d/ssh restart
从主机上登录

ssh root@172.17.0.15
The authenticity of host '172.17.0.15 (172.17.0.15)' can't be established.
ECDSA key fingerprint is cf:19:d7:73:02:7e:58:90:08:79:8c:f0:85:2c:a2:9e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.17.0.15' (ECDSA) to the list of known hosts.
root@172.17.0.15's password:
Welcome to Ubuntu 12.10 (GNU/Linux 3.5.0-52-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

root@fc9fe30c21bc:~#
4.保存对docker的修改
  • 查看下 CONTAINER ID

    docker ps
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    fc9fe30c21bc        ubuntu:12.10        "/bin/bash"         11 minutes ago      Up 11 minutes                           evil_turing
    
  • 保存 上一步的 CONTAINER ID 是 fc9fe30c21bc 但是不用全部输入只要保证不重复就可以了

    docker commit fc9f y109/ubuntu
    e099241dfc1fb31d950b0be4de2fa7a78510022737fe8cc81a913bdd4a244a95
    
  • 确认 镜像列表里面有刚刚保存的镜像

    docker images
    REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
    y109/ubuntu         latest              e099241dfc1f        14 seconds ago      316.2 MB
    ubuntu              14.10               2185fd50e2ca        2 days ago          237.2 MB
    ubuntu              utopic              2185fd50e2ca        2 days ago          237.2 MB
    ubuntu              trusty              9cbaf023786c        2 days ago          192.8 MB
    ubuntu              14.04.1             9cbaf023786c        2 days ago          192.8 MB
    ubuntu              14.04               9cbaf023786c        2 days ago          192.8 MB
    ubuntu              latest              9cbaf023786c        2 days ago          192.8 MB
    ubuntu              12.04               a9561eb1b190        2 days ago          120.2 MB
    ubuntu              12.04.5             a9561eb1b190        2 days ago          120.2 MB
    ubuntu              precise             a9561eb1b190        2 days ago          120.2 MB
    ubuntu              quantal             c5881f11ded9        3 months ago        172.2 MB
    ubuntu              12.10               c5881f11ded9        3 months ago        172.2 MB
    ubuntu              raring              463ff6be4238        3 months ago        169.4 MB
    ubuntu              13.04               463ff6be4238        3 months ago        169.4 MB
    ubuntu              13.10               195eb90b5349        3 months ago        184.7 MB
    ubuntu              saucy               195eb90b5349        3 months ago        184.7 MB
    ubuntu              10.04               3db9c44f4520        5 months ago        183 MB
    ubuntu              lucid               3db9c44f4520        5 months ago        183 MB
    
  • 提交

    docker push y109/ubuntu
    The push refers to a repository [y109/ubuntu] (len: 1)
    Sending image list
    

    首次提交会要求登录

    Please login prior to push:
    Username: y109
    Password:
    Email: XXXX@qq.com
    Login Succeeded
    The push refers to a repository [y109/ubuntu] (len: 1)
    Sending image list
    Pushing repository y109/ubuntu (1 tags)
    511136ea3c5a: Image already pushed, skipping
    bac448df371d: Image already pushed, skipping
    dfaad36d8984: Image already pushed, skipping
    5796a7edb16b: Image already pushed, skipping
    c5881f11ded9: Image already pushed, skipping
    e099241dfc1f: Pushing [===========>                                       ] 32.94 MB/147.3 MB 1m10s
    e099241dfc1f: Image successfully pushed
本人是在马化腾家的云上做的实验,系统为ubuntu完美使用。
<think>好的,用户询问如何在Linux服务器上安装DockerDocker Compose的最新版本。首先,我需要回忆相关的安装步骤,并确保这些步骤符合用户的需求。根据用户提供的引用内容,引用[1]和引用[2]都提到了在CentOS系统下安装DockerDocker Compose的方法,所以应该以CentOS为例进行说明,但也要指出其他发行版的差异。 用户可能使用的是CentOS,但其他Linux发行版如Ubuntu的步骤可能不同,是否需要提及?考虑到用户的问题没有指定发行版,应该以CentOS为主,同时建议其他发行版用户参考官方文档。接下来,安装Docker通常需要卸载旧版本,安装依赖,设置镜像源,安装软件包,配置镜像加速,启动服务并验证。这些步骤在引用[2]中有详细说明,需要按顺序整理。 对于Docker Compose的安装,用户需要下载二进制文件,赋予执行权限,并验证安装。同样,引用[2]提到了这些步骤。需要注意下载最新版本时,应检查官方网站获取最新的版本号,替换掉命令中的版本变量。此外,配置镜像加速部分,用户可能需要使用国内的镜像源,如阿里云或腾讯云,这需要用户自己注册获取地址,因此在程中要提醒他们替换成自己的地址。 另外,用户要求安装最新版本,因此在安装Docker时,可能需要使用官方提供的最新安装脚本,而不是通过系统包管理器,因为后者可能不是最新的。不过引用[2]中的步骤是添加Docker的镜像源后安装,这样也能获取较新版本,但可能不是最新的。是否需要建议使用官方脚本?需要确认哪种方法更适合获取最新版。根据Docker官方文档,使用他们的仓库安装可以确保获取最新版本,所以应该采用添加仓库的方式,而不是直接使用curl -sSL https://get.docker.com/ | sh这样的脚本,因为用户可能需要更可控的安装步骤。 此外,安装后的权限问题,需要将用户加入docker组,以避免每次使用sudo,这一点在引用中没有提到,是否需要补充?是的,这是一个常见的步骤,应该加入程中,提升用户体验。 最后,验证安装部分,运行hello-world镜像和检查版本号是必要的步骤,确保安装成功。对于Docker Compose,同样需要检查版本号确认安装正确。 现在需要将这些步骤结构化,分点说明,确保清晰易懂。同时,在回答末尾生成相关问题,可能涉及卸载旧版本、配置镜像加速的详细方法、常见问题解决等。需要确保所有命令准确无误,并且符合最新版的实际操作。可能还需要提醒用户注意安全性,比如使用官方来源下载,避免使用root用户等。</think>### 逐步程:在 Linux 服务器上安装 DockerDocker Compose 最新版本 #### **1. 安装 Docker** **步骤 1:卸载旧版本 Docker** 若服务器已安装旧版 Docker,需先卸载: ```bash sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine ``` **步骤 2:安装依赖包** 安装 Docker 所需的工具链: ```bash sudo yum install -y yum-utils device-mapper-persistent-data lvm2 ``` **步骤 3:添加 Docker 官方镜像源** 使用阿里云镜像加速(以 CentOS 为例): ```bash sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ``` **步骤 4:安装 Docker 最新版** 更新仓库并安装: ```bash sudo yum update -y sudo yum install -y docker-ce docker-ce-cli containerd.io ``` **步骤 5:配置镜像加速(可选)** 编辑配置文件`/etc/docker/daemon.json`,添加国内镜像源(需替换为你的加速地址): ```json { "registry-mirrors": ["https://your-mirror-id.mirror.aliyuncs.com"] } ``` **步骤 6:启动 Docker 服务** ```bash sudo systemctl start docker sudo systemctl enable docker ``` **步骤 7:验证安装** 运行测试容器: ```bash sudo docker run hello-world ``` 若显示`Hello from Docker!`,则安装成功[^2]。 --- #### **2. 安装 Docker Compose 最新版** **步骤 1:下载二进制文件** 从 GitHub 下载最新版本(替换`v2.25.0`为最新版本号): ```bash sudo curl -L "https://github.com/docker/compose/releases/download/v2.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose ``` **步骤 2:赋予执行权限** ```bash sudo chmod +x /usr/local/bin/docker-compose ``` **步骤 3:验证安装** 检查版本号: ```bash docker-compose --version ``` 输出类似`Docker Compose version v2.25.0`即成功[^2]。 --- #### **3. 配置用户权限(可选)** 将当前用户加入`docker`组,避免每次使用`sudo`: ```bash sudo usermod -aG docker $USER newgrp docker # 刷新组权限 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值