什么是Docker 容器?
Docker服务是一个虚拟机的管理平台,类似于Vmware虚拟化系统。通常在docker中,每一个镜像只负责某一项工作,像银行的ATM机器,虽是Windows系统的电脑,但终其一生只跑一个程序只显示一个界面。
image.pngDocker容器的使用
1.docker服务的安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
2.验证是否安装成功
使用docker -v 或者 sudo docker run hello-world 进行检查
3.查看镜像列表
查看本地所有镜像列表:sudo docker images
如果加上参数 -a sudo docker images -a
就是查看所有中间层的镜像,包括已经标记删除的镜像
4.如何获取镜像
1.使用docker hub网站 Docker Hub Container Image Library | App Containerization
2.自定义Dockerfile文件,手动构建镜像。
FROM ubuntu
MAINTAINER ZZX
ENV LANG C.UTF-8
RUN mkdir /var/tmp/jdk
COPY ./jdk-8u301-linux-aarch64.tar.gz /var/tmp/jdk
RUN tar xzf /var/tmp/jdk/jdk-8u301-linux-aarch64.tar.gz -C /var/tmp/jdk
RUN rm -rf /var/tmp/jdk/jdk-8u301-linux-aarch64.tar.gz
COPY ./Lris-0.0.1-SNAPSHOT.jar iris.jar
ENV JAVA_HOME=/var/tmp/jdk/jdk1.8.0_301
ENV PATH=$JAVA_HOME/bin:$PATH
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar
EXPOSE 8098
ENTRYPOINT ["java","-jar","/iris.jar"]
使用:sudo docker build -t imagename:tag .
进行构建
5.如何启动镜像
sudo docker run -itd --name irisjava --net host irisjava:v1
如果需要挂载目录,则添加此参数 -v /some/content:/usr/share/nginx/html
通过目录挂载,在更新镜像文件的时候,如nginx服务的html文件夹(前端网页存放目录),不再需要将文件复制到镜像里面去,只需要替换宿主机挂载目录的文件即可。
镜像端口映射至宿主机,使用参数:-p 8080:80
表示将镜像中的8080端口映射到 宿主机的 80端口。主机模式使用:--net host
表示镜像和宿主机端口共用,完全映射。
各个参数用法参考:Docker run 命令参数及使用 - 简书 (jianshu.com)
6.如何进入镜像,并提交保存修改后的镜像
通常情况下,下载下来的镜像一般不能满足我们的需求,大部分都需要手动修改相关参数后才能正常使用。为了简化操作,我们可以将一个镜像修改完成后,提交打包成一个新的镜像,后续部署则不用重复修改配置。
docker commit -m="vim cmd add ok" -a="zzx" 543161563fbf tsy/myubuntu:1.0
7.如何导入导出镜像
导出镜像
sudo docker save -o /irisjava_v1.1.tar irisjava:v1.1
导入镜像
sudo docker load -i irisjava_v1.1.tar
网友评论