docker从安装到入门(centos7连不上网)

我们安装好centos7之后,只用网络链接的NAT模式,主机有网你就有网,傻瓜式链接。但是发现ping不通百度。。

通过ifconfig -a发现ens33没有ip,虽然和这个没关系,因为用的是NAT模式。我们编辑vi /etc/sysconfig/network-scripts/ifcfg-ens33

docker从安装到入门(centos7连不上网)_第1张图片将onboot设置为true即可。

连接后 我们按网络上的教程。

uname -r看是否版本足够

yum update更新版本

yum install -y docker-io安装

systemctl start docker.service启动服务

 

我们安装好之后,如何使用呢。

client是docker客户端。

images是docker镜像

containers是容器

registry是集中存储分发镜像的服务。最常用的Docker Registry是官方的Docker Hub

 

通过docker images来查看我们有哪些镜像。

一个没有。。我们可以去下载(docker hub),或者自己打包

1.下载:docker pull centos

2.打包需要通过dockerfile来自动编译生成镜像。新建dockerfile文本文件,将打包好的war放在一起。内容如下:

docker从安装到入门(centos7连不上网)_第2张图片

         FROM:基于哪个镜像,你需要有一个参照的 标准镜像。

   VOLUME:可以将本地文件夹或者其他container的文件夹挂载到container中

     ADD:将文件拷贝到container的文件系统对应的路径

   RUN:RUN命令将在当前image中执行任意合法命令并提交执行结果。命令执行提交后,就会自动执行Dockerfile中的下一个指令

   ENTRYPOINT:container启动时执行的命令,但是一个Dockerfile中只能有一条ENTRYPOINT命令,如果多条,则只执行最后一条

我们需要cd到jar的目录下运行

3.docker使用dockerfile打包命令   docker build -t wechat .     最后有个点
docker从安装到入门(centos7连不上网)_第3张图片

docker容器就成成了,可以用docker images来查看。。这就相当于一个运行环境。。

4.通过docker run -d -p 8080:8080 wechat 来运行

docker run --name {容器名} -p {宿主机端口}:{docker端口} –v {宿主机目录}:{docker日志目录} -d {镜像ID:latest}

注意:这里我使用的centos,发现莫名其妙启动不了。

原因就是:Docker容器后台运行,就必须有一个前台进程。主线程结束,容器会退出。
 docker run -d -p wechat 改成 docker -dit -p wechat 就行了。

使用docker stop $(docker ps -a -1) 停止所有的容器。

用docker rmi 来删除容器,,我发现删不掉、、官方文档说,只能删除未使用的。。

使用docker rmi -f  来强制删除。、。、

docker rm $(docker ps -qf status=exited)  删除已经停掉的容器。

5.打包jar还是war都需要jdk运行环境,运行jar失败,查看日志发现是没有jdk

先打包一个jdk得容器然后根据该容器进行构造环境。

 需要一个jdk得tar.gz然后编写dockerfile

docker从安装到入门(centos7连不上网)_第4张图片

同上面打包,然后运行

docker run -d -it jdk1.8docker:20180730 /bin/bash

注意:创建容器的时候一定要使用 -it /bin/bash这种方式,要不然jdk的容器起不来

docker从安装到入门(centos7连不上网)_第5张图片

 

vim保存只读文件   :w !sudo tee %

 

 

你可能感兴趣的:(分布式)