ubuntu 16.04安装docker
~# apt-get install docker.io
ubuntu启动docker服务
~# service docker start
搜索docker映像
~# docker search http
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
httpd The Apache HTTP Server Project 1830 [OK]
haproxy HAProxy - The Reliable, High Performance T... 1001 [OK]
......还有很多结果显示, 略
下载httpd的docker映像
~# docker pull httpd
......等待下载完毕......
查看本机docker映像
~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
httpd latest 94af1f614752 4 days ago 178 MB
运行httpd的docker映像成为容器
~# docker run -it -d -p 80:80 --name datahttpd -v /data/:/usr/local/apache2/htdocs/ httpd
~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f6bd2f6c6dfc httpd "httpd-foreground" 21 minutes ago Up 21 minutes 0.0.0.0:80->80/tcp datahttpd
-i 交互
-t 控制台
-d 后台运行
-p 本机端口:映射为本docker映像的端口
--name 为docker容器起的名称
-v 本机路径:映射为本docker映像的路径
验证httpd服务
使用curl查看本机的httpd服务
~# curl localhost
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<title>Index of /</title>
</head>
<body>
<h1>Index of /</h1>
<ul><li><a href="Anaconda3-5.2.0-Linux-x86_64.sh"> Anaconda3-5.2.0-Linux-x86_64.sh</a></li>
<li><a href="Anaconda3-5.2.0-MacOSX-x86_64.pkg"> Anaconda3-5.2.0-MacOSX-x86_64.pkg</a></li>
<li><a href="Anaconda3-5.2.0-Windows-x86_64.exe"> Anaconda3-5.2.0-Windows-x86_64.exe</a></li>
</ul>
</body></html>
使用netstat查看运行的端口. 确认docker使用了80端口.
~# netstat -aptn
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 937/sshd
tcp 0 0 172.17.42.41:22 175.171.173.103:27372 ESTABLISHED 1100/1
tcp 0 0 172.17.42.41:51614 106.11.68.13:80 ESTABLISHED 843/AliYunDun
tcp 0 0 172.17.42.41:22 175.171.173.103:27239 ESTABLISHED 977/0
tcp 0 232 172.17.42.41:22 175.171.173.103:27396 ESTABLISHED 1141/2
tcp6 0 0 :::80 :::* LISTEN 26005/docker-proxy
停止运行容器
~# docker stop f6bd
f6bd是CONTAINER ID的前几位.
或者
~# docker stop datahttpd
datahttpd是在docker run命令中为docker容器起的名称.
运行容器
~# docker start datahttpd
删除容器
~# docker rm datahttpd
datahttpd是容器名称, 或者使用CONTAINER ID的前几位.
删除本机的docker映像
~# docker rmi IMAGE_ID
ubuntu停止docker服务
~# service docker stop
ubuntu 16.04卸载docker
~# apt-get remove docker.io