windows安装docker
win10企业版
对于win10企业版直接下载,https://www.docker.com/docker-windows
win7/win10家庭版
安装docker-tollbox,https://www.docker.com/products/docker-toolbox
启动
点击Docker Quickstart Terminal启动虚拟机,默认分配192.168.99.100IP地址。
登录
使用ssh登录到该虚拟机,默认的用户名密码是docker/tcuser。
设置阿里云镜像加速
开通加速
去如下地址开通加速,https://cr.console.aliyun.com/#/accelerator
配置镜像
修改/var/lib/boot2docker/profile文件,将--registry-mirror=<your accelerate address>添加到EXTRA_ARGS中。
最后sudo /etc/init.d/docker restart重启Docker服务就可以了。
ps -ef | grep docker查看docker进程信息,如果出现刚配置的--registry-mirror就证明配置成功了。
安装镜像
搜索镜像
#搜索安装了java环境的镜像
docker search java
#搜索安装了redis的镜像
docker search redis
列表中的OFFICIAL [OK]表示是官方提供的镜像
获取镜像
#获取一个最新的jdk9的镜像
docker pull java:9
查看当前下载的镜像
docker images
删除镜像
docker rmi [imageID]
运行容器
sudo docker run -t -i java:9 /bin/bash
-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开。可以通过docker ps查询当前正在运行的容器。
deamon方式运行容器
通过添加 -d 参数来实现。docker logs [container ID or NAMES]查看输出。
终止容器
docker stop [container ID or NAMES]
删除容器
删除一个处于终止状态的容器
docker rm [container ID or NAMES]
清理所有处于终止状态的容器
docker rm $(docker ps -a -q)
制作镜像
利用maven的docker插件自动生成镜像
项目的根目录新建docker目录,新建Dockerfile文件:
FROM java:8
VOLUME /tmp
ADD youapp.jar app.jar
ENV JAVA_OPTS=""
ENTRYPOINT exec java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar
修改pom.xml,增加如下插件:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<dockerDirectory>${project.basedir}/docker</dockerDirectory>
<dockerHost>https://192.168.99.100:2376</dockerHost>
<dockerCertPath>C:\Users\Program Files\.docker\machine\machines\default</dockerCertPath>
<imageName>[镜像前缀]/${project.artifactId}</imageName>
<imageTags>
<imageTag>${project.version}</imageTag>
</imageTags>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
执行构建指令
mvn clean package docker:build
成功后通过docker images能查到刚才打包的镜像。
镜像上传阿里云docker仓库
创建阿里云仓库,登录网站https://cr.console.aliyun.com/,创建镜像仓库。新建命名空间,填写项目名最好和maven的project.artifactId保持一致。
配置认证信息,在maven的settings.xml中加入:
<servers>
<server>
<id>docker-my</id>
<username>用户名</username>
<password>密码</password>
<configuration>
<email>邮箱</email>
</configuration>
</server>
</servers>
修改pom.xml
#修改imageName
<imageName>registry.cn-qingdao.aliyuncs.com/命名空间/${project.artifactId}</imageName>
#新增serverId,填写Settings.xml里配置的信息
<serverId>docker-my</serverId>
maven指令上传到私有docker仓库
mvn clean package docker:build -DpushImageTag