docker安装与运行

安装Docker

1、yum安装
  yum -y update

安装具体流程另外查看,只记录几个操作比较多的命令

  

2、添加yum仓库
sudo tee /etc/yum.repos.d/docker.repo <<-'EOF'
/etc/yum.repos.d/docker.repo内容:
[dockerrepo] 
name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpgcheck
EOF


安装docker包
sudo yum update
sudo yum install docker -engine


开启docker deamon
sudo service docker start


查看状态: docker info


重启:sudo service docker start


设置开机启动:sudo chkconfig docker on




卸载
查询安装的docker版本,列出安装的docker安装软件包
yum list installed | grep docker


删除安装包
sudo yum -y remove[查询列出的docker安装软件包]
删除镜像,容器,卷组,手动删除机器配置文件
rm -rf /var/lib/docker




docker制作
1、使用dockerfile文件创建镜像
说明:前提需要有一个基础镜像,在此基础上创建一个新镜像,安装需要的工具或者部署自己的服务
dockerfile描述
#test
FROM public_cloud/base:0.1    -基础镜像的地址/名称:版本号
MAINTAINER public_cloud       -设置该镜像的维护者信息
ENV JAVA_HOME/opt/jdk         -设置jdk回家变量
ENV PATH $PATH:$JAVA_HOME/bin
#EXPOSE 8080 10080             -指定容器的监听端口前面端口表示docker里面的端口号,后面的表示该机器把docker公开出去的端口号
WORKDIR /home/docker           -到某个目录下,/home/docker当前到这个目录下工作了
COPY app /home/docker          -当前目录的文件拷贝到 docker的/home/docker 目录里面
RUN echo “执行命令” >> /home/app/run.sh -生成一个run.sh文件,提供给docker执行,docker制作最后调用
#RUN echo "java -jar xxx.jar"  >> /home/app/run.sh -表示把启动xxx.jar的命令写到run.sh里面
CMD["./run.sh"]                -提供容器默认执行命令,dockerfile只允许使用一次CMD指令,使用多个CMD时,只有后面的会生效,


创建镜像命令
docker build -t [docker仓库地址]/name:version .
-t 标识新建的镜像输入[]里面
name:version 镜像名称和版本信息
“.” 表示在当前目录下执行,如果其他目录可以写目录地址




2、使用docker commit命令创建
说明:需要在本机启动一个镜像为基础镜像
docker commit[dockerID] [docker仓库地址]/name:version
[dockerID]: 为启动的镜像id,通过docker ps -a查看到
name:version: 名称和版本改成自己需要的名称即可


通常docker commit制作镜像发生都配合如下目录一起使用
docker run -i -t -v [共享目录]:mnt/software -privileged=true [docker仓库地址]/name:version /bin/bash




docker操作
上传:
docker push [docker仓库地址]/name:version


下载
docker pull [docker仓库地址]/name:version


启动 
docker run -d -p 10080:8088 -name [dockername] [docker仓库地址]/name:version /home/docker/run.sh
-/home/docker/run.sh用于启动里面需要执行的服务
-p 提供对外访问端口,机器对外访问:docker里面的port




停止
docker stop [dockername]




删除
docker rm  dockerid
docker rmi 仓库:名称:版本




进入镜像查看镜像信息
docker exec -it [dockerID] /bin/bash 

dockerID:使用docker ps -a 查看到启动的dockerid,


1,查看有哪些image

docker images
  • 1
  • 1

2,查看正在运行的image

docker ps
  • 1
  • 1

3,进入到一个Docker image里面

docker run -it --rm 10.100.208.171:6000/caffe  /bin/bash
  • 1
  • 1

4,从官方拉取image,tag为8.0-cudnn5-devel-centos7,更多https://hub.docker.com/r/nvidia/cuda/tags/

docker pull nvidia/cuda:8.0-cudnn5-devel-centos7
  • 1
  • 1

5,往image里拷贝东西,-v是把本地路径mount到docker

docker run -it --rm -v /root:/root 10.100.208.171:6000/caffe  /bin/bash
  • 1
  • 1

6,保存对image的修改,CONTAINER_ID是docker ps里看见的

docker commit CONTAINER_ID tag
docker commit 42d50a33478c 10.100.208.171:6000/cuda:8.0-cudnn5-devel-centos7-caffeso
  • 1
  • 2
  • 1
  • 2

7,用dockerFile来生成image,caffe_gpu是一个文件夹,里面有dockerFile

docker build -t mycaffe:gpu ./caffe_gpu
  • 1
  • 1

8,使之成为平台conf里可用的image

docker push
  • 1
  • 1

9,改tag

docker tag
  • 1
  • 1

10,删除

docker rmi
  • 1
  • 1

11,把docker imageslist上的image保存为一个文件

docker save
  • 1
  • 1

12,把一个image文件保存到docker imageslist上

docker load
  • 1
  • 1

13,启动docker的同时映射端口

docker run -it --rm -p 39999:39999 10.100.208.171:6000/caffe  /bin/bash

分割线
感谢打赏
江西数库信息技术有限公司
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS