最近使用了docker一段时间,主要拿来做部署镜像,做了一个jdk tomcat maven 还有webapp的镜像,记录下主要的步骤和问题。记录部分PPT资料
docker 的原理
*LXC是Linux containers的简称
*一种基于容器的操作系统层级的虚拟化技术
*在操作系统层次上为进程提供的虚拟的执行环境,一个虚拟的执行环境就是一个容器
*容器绑定特定的cpu和memory节点 提供独立的namespace
Docker并不是LXC的替代品,Docker的底层就是使用了LXC来实现的。LXC将Linux进程沙盒化,使得进程之间相互隔离,并且能够控制各进程的资源分配。
在LXC的基础之上,Docker提供了一系列更强的功能
在LXC的基础之上,Docker提供了一系列更强的功能
1 首先安装docker ,系统支持
*支持linux
*支持osx ,需要Boot2Docker
*支持Windows ,通过虚拟机或者cygwin实现
*安装在64位的linux 系统上,cpu架构也要求64位安装前查看系统信息 :uname –a
*对于 CentOS 6.5 而言,内核版本默认是 2.6。首先,可通过以下命令安装最新内核:
*rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
*rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
*yum -y --enablerepo=elrepo-kernel install kernel-lt 随后,编辑以下配置文件:
*vi /etc/grub.conf 将default=1修改为default=0。
*最后,通过reboot命令重启操作系统。
修改为阿里云的库:
*# /etc/sysconfig/docker
*#
*# Other arguments to pass to the docker daemon process
*# These will be parsed by the sysv initscript and appended
*# to the arguments list passed to docker -d
*
other_args="--insecure-registry=registry.mirrors.aliyuncs.com" 启动查看版本
制作Image
编辑dockerfile
[root@iZ23o6ei9mjZ docker]# more Dockerfile FROM centos MAINTAINER chenhua@ancun.com #Make java and tomcat install directory RUN mkdir -p /home/dockerimage/docker/sitwebimage/maven/ RUN mkdir -p /home/dockerimage/docker/sitwebimage/java/ RUN mkdir -p /home/dockerimage/docker/sitwebimage/tomcat/ RUN mkdir -p /home/dockerimage/docker/sitwebimage/code/ RUN mkdir -p /home/dockerimage/docker/sitwebimage/fileupload/ #Copy jre and tomcat into image ADD ./apache-maven-3.1.1 /home/dockerimage/docker/sitwebimage/maven/ ADD ./jdk1.7.0_79 /home/dockerimage/docker/sitwebimage/java/ ADD ./apache-tomcat-7.0.70 /home/dockerimage/docker/sitwebimage/tomcat/ ADD ./start_tomcat.sh /home/dockerimage/docker/sitwebimage/start_tomcat.sh ADD ./testcase /home/dockerimage/docker/sitwebimage/code/ #Expose http port EXPOSE 8087然后编译
写道
[root@iZ23o6ei9mjZ dockerimage]# docker build -t tomcatweb -f dockfile .
Sending build context to Docker daemon 162.4 MB
Sending build context to Docker daemon
Step 0 : FROM ubuntu
latest: Pulling from ubuntu
4d330285ec99: Pull complete
497dd7934d13: Pull complete
bca38844f775: Pull complete
e711979f32e2: Pull complete
f38e3ca2b73a: Pull complete
103d358b91a9: Pull complete
Digest: sha256:e82b2d87a36844fa95cddb478805baa1fbea32cd4ded772a89a7ea42e8cd1a72
Status: Downloaded newer image for ubuntu:latest
启动容器Sending build context to Docker daemon 162.4 MB
Sending build context to Docker daemon
Step 0 : FROM ubuntu
latest: Pulling from ubuntu
4d330285ec99: Pull complete
497dd7934d13: Pull complete
bca38844f775: Pull complete
e711979f32e2: Pull complete
f38e3ca2b73a: Pull complete
103d358b91a9: Pull complete
Digest: sha256:e82b2d87a36844fa95cddb478805baa1fbea32cd4ded772a89a7ea42e8cd1a72
Status: Downloaded newer image for ubuntu:latest
写道
[root@iZ23o6ei9mjZ ~]# docker run -i -t –d –p 8087:8087 -v /home/dockerimage/docker/webapps:/webapps/ sitwebimage2 /bin/bash
docker run:启动container
ubuntu:你想要启动的image
-t:进入终端
-i:获得一个交互式的连接,通过获取container的输入
/bin/bash:在container中启动一个bash shell
-d 以后台模式运行,运行后进入容器docker run:启动container
ubuntu:你想要启动的image
-t:进入终端
-i:获得一个交互式的连接,通过获取container的输入
/bin/bash:在container中启动一个bash shell
写道
1:使用docker attach命令
我们使用
docker attach db3 或者 docker attach d48b21a7e439
db3是后台容器的NAMES,d48b21a7e439是容器的进程ID CONTAINER ID
然后就进去了这个容器的ssh界面。
但是它有一个缺点,只要这个连接终止,或者使用了exit命令,容器就会退出后台运行
2:使用docker exec命令
这个命令使用exit命令后,不会退出后台,一般使用这个命令,使用方法如下
docker exec -it db3 /bin/sh 或者 docker exec -it d48b21a7e439 /bin/sh
这个时候试着访问下tomcat我们使用
docker attach db3 或者 docker attach d48b21a7e439
db3是后台容器的NAMES,d48b21a7e439是容器的进程ID CONTAINER ID
然后就进去了这个容器的ssh界面。
但是它有一个缺点,只要这个连接终止,或者使用了exit命令,容器就会退出后台运行
2:使用docker exec命令
这个命令使用exit命令后,不会退出后台,一般使用这个命令,使用方法如下
docker exec -it db3 /bin/sh 或者 docker exec -it d48b21a7e439 /bin/sh
上传Image 到dockerhub
写道
step1——找到本地镜像的ID:docker images
step2——登陆Hub:docker login --username=username --password=password --email=email
step3——tag:docker tag <imageID> <namespace>/<image name>:<version tag eg latest>
step4——push镜像:docker push <namespace>/<image name>
step2——登陆Hub:docker login --username=username --password=password --email=email
step3——tag:docker tag <imageID> <namespace>/<image name>:<version tag eg latest>
step4——push镜像:docker push <namespace>/<image name>
相关推荐
1.加载镜像 docker load -i myphpadmin.tar 2.查看镜像是否加载成功 docker images 3.创建实例 docker run --name myphpadmin -d -e PMA_ARBITRARY=1 -p 21010:80 phpmyadmin 4.访问 http://IP:21010
openMetadata docker 安装
docker集成wkhtmltopdf,安装包就是封装好的镜像文件,直接解压执行就可以; -- 解压镜像包<上面安装包> docker load -- 运行docker docker run -itd -v /data/share:/data/share -m 8G --name="wkhtmltopdf" ...
Ubuntu离线安装docker 下载完成后,执行如下: dpkg -i containerd.io_1.6.6-1_amd64.deb docker-ce_20.10.17~3-0~ubuntu-bionic_amd64.deb docker-ce-cli_20.10.17~3-0~ubuntu-bionic_amd64.deb docker-ce-rootless...
001
Docker在IT行业中是一款非常重要的容器化平台,它允许开发者将应用程序及其依赖打包到一个可移植的容器中,便于在各种环境中快速部署和运行。在Windows操作系统上安装Docker,可以借助Docker Desktop或者Docker ...
docker run -p 3306:3306 --name mysql8 -v /opt/apps/datasouce/docker/mysql8.0.23/logs:/var/log/mysql -v /opt/apps/datasouce/docker/mysql8.0.23/data:/var/lib/mysql -v /opt/apps/datasouce/docker/mysql...
资源名称: Docker Desktop for Windows 10 (Docker Desktop Installer.exe) 概述: Docker Desktop for Windows 10 是一个官方提供的强大工具,它允许用户在Windows 10操作系统上轻松运行Docker容器化应用。Docker ...
docker安装部署gorse
docker版本26.1.2,docker-compose版本v2.11.0。 1.把docker_compose_install-new文件夹放在任意路径; 2.chmod -R 777 install.sh 3.执行./install.sh 兼容:CentOS7.6、麒麟V10服务器版。
Docker Desktop是一种开源的应用容器引擎,它允许开发者将他们的应用及依赖项打包到一个可移植的容器中,然后发布到任何流行的Linux机器上,甚至可以实现虚拟化。这种技术对于简化配置,节省项目环境部署时间以及...
由于Docker官网被墙,下载Desktop安装包不太容易。既然你都打开了这个链接,那么没错,这份资源就是你想要的。如果这份资源要积分的话,那就看看这个百度网盘=》链接: ...
导入命令:docker load -i prometheus-latest.tar
mysql5.7的docker镜像,下载之后查看安装教程 https://mp.csdn.net/mp_blog/creation/editor/144745461
连接数据库informix的驱动jar包
docker安装mysql镜像
docker版本:docker-ce-18.03.1.ce-1.el7.centos.x86_64 基于操作系统版本:centos7.9.2009 minial
Docker 离线安装 MySQL 5.7 使用说明 本文将指导你如何使用离线的 Docker 镜像包 (docker-mysql-5.7.tar.zip) 来在 Linux 系统中安装并运行 MySQL 5.7 容器。 前提条件 • 已安装 Docker 环境。 • MySQL 5.7 ...
mysql5.7 - docker 版本,centos,ubuntu系统, 使用:docker load -i mysql-5.7.tar
Docker书.pdf