版权声明:本文由姚俊刚原创文章,转载请注明出处:
文章原文链接:https://www.qcloud.com/community/article/85
来源:腾云阁 https://www.qcloud.com/community
在腾讯云的 ubuntu 服务器上安装和运行 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: y109@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
Refrence
http://www.blogjava.net/yongboy/archive/2013/12/12/407498.html
http://wiki.jzland.com
来源:https://www.cnblogs.com/purpleraintear/p/6024328.html