docker简介(安装与运行)

docker简介7.20

一、前言

一、容器的介绍

1.Copy-on-Write 可写容器层
2.容器层以下所有镜像层都是只读的
docker从上往下依次查找文件
容器层保存镜像变化的部分,并不会对镜像本身进行任何修改
一个镜像最多127层

二、虚拟机和docker区别

docker简介(安装与运行)

二、基础命令

docker pull busybox  					%从镜像仓库拉取(下载)镜像
docker load -i busybox.tar				%本地已有镜像包的时候直接在本地加载镜像
docker images  							%查看本地镜像列表
docker history  busybox:latest  		%查看镜像修改历史
docker ps 								%查看后台开启的容器状态
docker ps -a 							%查看后台所有容器状态
docker rm -f ef3b3fa540ec  				%删除容器
docker build -t demo:v6 . 				%创建容器(以当前路径下的dockerfile自动创建的方式)
docker run --rm demo:v6  				%rm表示运行容器后回收(删除)
docker run -d demo:v6 					%-d表示运行容器的同时将其打入后台
docker run -it --name demo demo:v5 		%-it表示运行容器的同时进入容器,交互式
docker inspect demo						%查看容器详细信息
docker commit demo demo:v1				%把demo保存为demo:v1
docker run -d --name demo nginx         %以demo的名字后台运行
docker run -d --name demo -p 80:80 game2048
                                        %在后台用取名为demo的容器运行game2048,从虚拟机到容器的端口映射为80

docker load -i busybox 将文件busybox导入到容器

docker run -it -d --name demo nginx开启容器,在取名demo的容器中运行nginx

删除进程
docker rmi game2048:latest

二、docker安装

新建虚拟机

[root@localhost yum.repos.d] vim docker.repo 

[docker]
name=docker-ce
baseurl=http://172.25.42.250/docker-ce
gpgcheck=0

启用

[root@localhost yum.repos.d] vim docker.repo 
[root@localhost yum.repos.d] systemctl start docker
[root@localhost yum.repos.d] systemctl enable docker
[root@localhost yum.repos.d] docker info  查看docker运行情况

正常情况
docker简介(安装与运行)
当出现以下报错时
docker简介(安装与运行)
解决方法

[root@server1 sysctl.d]# pwd     #如果docker info出现下图警告,下面解决
/etc/sysctl.d
[root@server1 sysctl.d]# cat docker.conf 
net.bridge.bridge-nf-call-iptables = 1
net.bridge.bridge-nf-call-ip6tables = 1

[root@server1 sysctl.d]# sysctl  --system		#重启就没有警告了

当显示ip4/6未开启时,解决方法

vim /etc/sysctl.conf

///
net.ipv4.ip_forward = 1
///

sysctl -p

三、导入游戏包程序运行

利用游戏的镜像tar,导入容器,运行容器并打入后台,80端口映射到80端口

[root@server1 mnt] ls
game2048.tar  harbor  harbor-offline-installer-v1.10.1.tgz
[root@server1 mnt] docker load -i game2048.tar 
[root@server1 mnt] docker run -d --name demo -p 80:80 game2048

即可在网页上看到效果
docker简介(安装与运行)
再次运行另一个游戏时

[root@server1 mnt] docker rm -f demo                                 删除之前的进程
[root@server1 mnt] docker load -i mario.tar    
[root@server1 mnt] docker run -d --name demo -p 80:8080 mario       以8080端口进行映射

docker简介(安装与运行)

docker简介(安装与运行)

上一篇:14.Docker(五)-----数据卷(Docker数据卷管理、卷插件)


下一篇:企业项目实战k8s篇(八)Ingress服务