环境ubuntu4.4
安装Docker: apt-get -y install docker.io
启动docker服务:service docker start
停止docker服务:service docker stop
重启docker服务:service docker restart
查看docker安装信息: docker version
查找镜像:docker search 镜像名(:标签)
下载镜像:docker pull 镜像名(:标签) 不带标签则自动下载latest版本镜像
查看本地所有镜像: docker images
运行镜像,设置映射端口号并挂载目录到本机:
docker run -it --name 容器名称-p 8081:8080 -p 3307:3306 -v 宿主机目录路径:容器目录路径 -d 镜像名称或镜像id
各参数含义:-it 以交互模式运行容器,并分配一个伪输入终端
--name 为容器取一个别名
-p 设置端口映射,让外界可以通过访问宿主机端口的方式访问容器对应端口,例如 -p 8081:8080 表示外网可以通过访问 宿主机 8081端口来访问容器的8080端口,此参数可以重复多次
-v 挂载宿主机目录到容器的某个目录,例如 -v /root/deploy:/usr/deploy 表示挂载宿主机的/root/deploy目录到容器的/usr/deploy目录。当在宿主机目录添加或删除文件时会同时作用于容器对应目录
-d 以守护模式运行,以使得退出容器时不会关闭容器
删除镜像:docker rmi 镜像名称或镜像id
查看本地所有容器: docker ps -a
查看已运行的容器:docker ps
进入容器并获得一个命令终端:docker exec -it 容器名或容器id /bin/bash 退出:ctrl+p+q
关闭容器:docker stop 容器名或容器id
启动容器:docker start 容器名或容器id
删除容器:docker rm 容器名或容器id
保存当前容器并生成新镜像:docker commit 容器id 自定义镜像名称
导出镜像到tar包:docker export 镜像名或镜像id > 自定义名称.tar
或 docker save 镜像名或镜像id > 自定义名称.tar
导入镜像:docker import 自定义镜像名 < 打包镜像.tar (对应docker export)
或 docker load < 打包镜像.tar (对应docker save)
==============================================================================
一些其他的问题(Centos7环境):
1. centos7默认不启动网络配置,从而不能访问外网
解决方法:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改:ONBOOT=yes
2.外网无法通过宿主机ip访问docker容器,在启动docker容器时报:WARNING: IPv4 forwarding is disabled. Networking will not work.
解决方法:
vi /etc/sysctl.conf 或者 vi /usr/lib/sysctl.d/00-system.conf
添加或者修改: net.ipv4.ip_forward=1
重启network服务:systemctl restart network