docker安装与应用

一.docker简介
VM是一个运行在宿主机之上的完整的操作系统,VM运行自身操作系统会占用较多的CPU、内存、硬盘资源。Docker不同于VM,只包含应用程序以及依赖库,基于libcontainer运行在宿主机上,并处于一个隔离的环境中,这使得Docker更加轻量高效,启动容器只需几秒钟之内完成。由于Docker轻量、资源占用少,使得Docker可以轻易的应用到构建标准化的应用中。
二.docker相关概念

  • Docker daemon: 运行在宿主机上,Docker守护进程,用户通过Docker client(Docker命令)与Docker daemon交互
  • Docker client: Docker 命令行工具,是用户使用Docker的主要方式,Docker client与Docker daemon通信并将结果返回给用户,Docker client也可以通过socket或者RESTful api访问远程的Docker daemon
    在这里插入图片描述- Docker image:镜像是只读的,镜像中包含有需要运行的文件。镜像用来创建container,一个镜像可以运行多个container;镜像可以通过Dockerfile创建,也可以从Docker hub/registry上下载。
  • Docker container:容器是Docker的运行组件,启动一个镜像就是一个容器,容器是一个隔离环境,多个容器之间不会相互影响,保证容器中的程序运行在一个相对安全的环境中。
  • Docker hub/registry: 共享和管理Docker镜像,用户可以上传或者下载上面的镜像,官方地址为https://registry.hub.docker.com/,也可以搭建自己私有的Docker registry。
    三.ubuntu下docker
    1.查看版本和存储驱动文件是否存在
ls -l /sys/class/misc/device-mapper

2.curl安装docker

curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh --mirror Aliyun

3.查看版本号

docker version

4.使用非root账户用户组

sudo groupadd docker
sudo gpasswd a ${USER} docker
suod service docker restart

5.输出hello world

docker run ubuntu echo 'Hello World' 

四.docker命令
1.查看版本

 docker version

2.搜索镜像

docker search tutorial

在这里插入图片描述
3.下载镜像

docker pull learn/tutorial

4.运行镜像

docker run learn/tutorial echo 'hello world'

5.容器中安装ping命令

docker run lean/tutorial apt-get install -y ping

6.查看docker内正在运行的镜像

docker ps -l

在这里插入图片描述7.从容器创建一个新的镜像,返回一个唯一编码

docker commit a5c0153795a8 learn/ping

8.执行命令

docker run learn/ping ping www.baidu.com

9.获取容器/镜像的元数据

docker inspect [OPTIONS] NAME|ID [NAME|ID...]

10.查看docker存储了哪些镜像

docker images

11.将镜像保存到仓库中

docker push learn/ping

12.杀死所有running状态的容器

docker kill $(docker ps -q)

13.删除所有已经停止的容器

docker rm $(docker ps -a -q)

五.在容器中部署静态网站
1.端口映射

sudo docker run -p 80 --name web -i -t ubuntu /bin/bash

2.安装nginx

apt-get install -y nginx

注:如果出错则更新源

apt-get update

3.安装vim

apt-get install -y vim

4.设置存放网站的目录

mkdir -p /var/www/html
cd /var/www/html

创建静态页面

vim index.html

5.查看并配置nginx

whereis nginx
cd /etc/nginx/sites-enabled
vim default

将root值修改为刚刚建立网站的地址,根目录下运行nginx

nginx

容器中查看当前进程

ps -ef

ctrl+P+Q退出,使容器保持在后台一直运行
6.查看网站内容
查看端口映射

sudo docker port web

查看容器中进程运行情况

sudo docker top web

查看网站

curl http://127.0.0.1:32768

可在浏览器中中直接登录,也可用容器的ip地址访问

docker inspect web

停掉进程

docker stop web

重启容器

sudo docker start -i web

ps -ef查看进程并没有启动nginx,ctrl+p+q退出,用exec命令启动nginx

sudo docker exec web nginx

注意:重启一个容器时原来的ip地址和映射都会发生改变,用docker inspect web 查看。
七.查看和删除镜像
1.查看镜像的存储地址(/var/lib/docker)

sudo docker info

2.列出镜像

docker images -a

第一列,镜像所属仓库名
3.删除镜像

docker rmi [id]

注:可删除多个镜像

八.从本地下载镜像并上传到服务器
1.找到镜像版本号
在这里插入图片描述
2.将镜像保存到本地

docker save 镜像ID> /home/name.tar

在这里插入图片描述
3.上传到云平台后用 docker load < name.tar 安装
在这里插入图片描述
4.再用docker tag修改下名字
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值