若是操做系统使用debian/deepin/ubuntu系列,安装docker-ce(社区版本,相对还有docker-ee),能够采用aliyun的脚本安装:html
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
1.aliyun镜像网站 https://dev.aliyun.com/search.html 2.docker hub https://hub.docker.com/java
针对Docker客户端版本大于1.10的用户,您能够经过修改daemon配置文件/etc/docker/daemon.json来使用加速器:redis
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://30ied0wq.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
启动/中止docker服务:systemctl docker start/stop 查看docker镜像列表: docker images 查看docker容器列表: docker ps/docker ps -aq 删除容器: docker rm [容器id]/docker rm $(docker ps -aq) 删除镜像: docker rmi 登录:docker login --username=用户id 地址 拉取镜像:docker pull 导出镜像:docker export 容器id > *.tar 导入镜像:docker load < *.tar 标签: docker tag 镜像id 标签或与仓库地址相同名字:版本 提交到仓库:docker push 仓库地址:[镜像版本号] 容器保存到镜像:docker commit 容器id 标签 进入容器: docker exec -it 容器id /bin/bash(/bin/sh或bash) 启动镜像:docker run -v 本地目录:映射目录 -p 容器端口:主机端口 镜像id /bin/bash(/bin/sh或bash) 固然还有其余参数,能够查找手册
后续补充spring
举例:docker
1.docker search mongo 2.docker pull mongo:3.2 3.docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo:3.2 4.docker run -it mongo:3.2 mongo --host 172.17.0.1 5.docker exec -it mongo /bin/bash
http://www.runoob.com/docker/docker-install-redis.htmljson
ubuntu vim /etc/default/dockerubuntu
DOCKER_OPTS="-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"
centos: vim /lib/systemd/system/docker.servicevim
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
在springcloud中使用Docker,结合maven使用Dockerfile文件,首先在pom上添加centos
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <!-- tag::plugin[] --> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.4.3</version> <configuration> <imageName>${docker.image.prefix}/${project.artifactId}</imageName> <dockerDirectory>src/main/docker</dockerDirectory> <resources> <resource> <targetPath>/</targetPath> <directory>${project.build.directory}</directory> <include>${project.build.finalName}.jar</include> </resource> </resources> </configuration> </plugin> <!-- end::plugin[] --> </plugins> </build>
修改application.yml文件bash
server: port: 8761 eureka: instance: prefer-ip-address: true client: registerWithEureka: false fetchRegistry: false
IntellijIdea的Module中添加Dockerfile文件,与pom.xml所在目录同级,但有个问题没仔细研究,在编译过程不会自动拷贝到eureka-1.0-SNAPSHOT.jar生成目录下,手动拷贝一下就行。
FROM frolvlad/alpine-oraclejdk8:slim VOLUME /tmp ADD eureka-1.0-SNAPSHOT.jar app.jar #RUN bash -c 'touch /app.jar' ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"] EXPOSE 10000
进入命令行,cd到pom.xml所在目录
mvn clean mvn package docker:build
解决当前用户没有docker访问权限问题
sudo groupadd docker sudo gpasswd -a ${USER} docker sudo service docker restart或sudo systemctl restart docker su root docker ps
Shipyard安装
curl -sSL https://shipyard-project.com/deploy | bash -s