什么是Docker
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)
记录一下Ubuntu安装docker的步骤(不要问我为啥不使用CentOS应为我安装多多次都没事成功)
安装前提
- 系统为Ubuntu
- 内核为3.18以上
- 系统联网
-
查看内核版本
uname -a
-
选择国内的云服务商,我的服务器是阿里云的所以选择阿里云为例
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
-
安装所需要的包
sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
-
添加使用 HTTPS 传输的软件包以及 CA 证书
sudo apt-get update sudo apt-get install apt-transport-https ca-certificates
-
添加GPG密钥
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
-
添加软件源
echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" | sudo tee /etc/apt/sources.list.d/docker.list
-
添加成功后更新软件包缓存
sudo apt-get update
-
安装docker
sudo apt-get install docker-engine
-
启动 docker
sudo systemctl enable docker sudo systemctl start docker
-
测试运行
sudo docker run hello-world
-
拉取CentOS
docker pull centos
-
创建docker容器
docker run -i -t -d --name CentOS -p 20:20 -p 21:21 -p 80:80 -p 443:443 -p 888:888 -p 8888:8888 --privileged=true -v /home/www:/www centos /* 代码注释: 创建一个docker容易命名为CentOS(名称自定义),然后将宿主机的20,21,80,443,888,8888这五个端口映射到docker容器中去。 并且将宿主机的/home/www文件夹映射到docker容器的/www上去(注意:文件目录如果不存在。宿主机和容器会自己创建,无需手动创建)。 privileged表示在运行容器的时候,给容器加特权,设置容器有写文件的权限。 */
-
查看创建那些容器
sudo docker ps
-
进入容器
sudo docker exec -it 755c7c7RR1e1 /bin/bash /* 注释:755c7c7RR1e1为容器的ID,不通的容器有这不一样的ID 这个ID可以使用 sudo docker ps 命令查看 */
参考文档:
菜鸟教程 | Ubuntu Docker 安装
Docker官方文档
docker一下命令
//列出所有的容器 ID docker ps -aq //停止所有的容器 docker stop $(docker ps -aq) //删除所有的容器 docker rm $(docker ps -aq) //删除所有的镜像 docker rmi $(docker images -q) //删除所有不使用的镜像 docker image prune --force --all或者docker image prune -f -a // 删除所有停止的容器 docker container prune