docker build -t friendlyname .# 使用此目录的 Dockerfile 建立镜像 docker run -p 4000:80 friendlyname # 运行端口 4000 到 90 的“友好名称”映射 docker run -d -p 4000:80 friendlyname # 内容相同,但在分离模式下 docker ps # 查看全部正在运行的容器的列表 docker stop <hash> # 平稳地中止指定的容器 docker ps -a # 查看全部容器的列表,甚至包含未运行的容器 docker kill <hash> # 强制关闭指定的容器 docker rm <hash> # 今后机器中删除指定的容器 docker rm $(docker ps -a -q) # 今后机器中删除全部容器 docker images -a # 显示此机器上的全部镜像 docker rmi <imagename> # 今后机器中删除指定的镜像 docker rmi $(docker images -q) # 今后机器中删除全部镜像 docker login # 使用您的 Docker 凭证登陆此 CLI 会话 docker tag <image> username/repository:tag # 标记 <image> 以上传到镜像库 docker push username/repository:tag # 将已标记的镜像上传到镜像库 docker run username/repository:tag # 运行镜像库中的镜像 docker exec -it 775c7c9ee1e1 /bin/bash #进入容器 docker tag my_maven:3.5.4-jdk-8 liyc/my_maven:3.5.4-jdk-8 #重命名 #将宿主机的/home/web挂载到容器nginx的html里,实现nginx访问宿主机项目 docker run --name ops -p 80:80 -v /home/web:/usr/share/nginx/html -d nginx:latest #查看日志 docker logs --hlep docker logs -f container #查看最近一分钟日志 docker logs -f --since 1m container # 容器系统时间和宿主机时区同样 docker run -e TZ=Asia/Shanghai or -v /etc/localtime:/etc/localtime # 推荐运用本身设置时区:java -Duser.timezone=Asia/Shanghai #删除none的镜像 docker rmi $(docker images | grep "none" | awk '{print $3}') # 或 docker rmi $(docker images -f "dangling=true" -q) # 或者 docker image prune -a -f #中止容器 docker stop $(docker ps -a | grep "Exited" | awk '{print $1 }') #删除容器 docker rm $(docker ps -a | grep "Exited" | awk '{print $1 }') #主机文件复制到容器 docker cp xxx.txt contenterid:/path/ #容器文件复制到主机 docker contenterid:/path/xxx.txt /root/
Install Composehtml
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose #https://docs.docker.com/compose/install/
受权java
sudo chmod +x /usr/local/bin/docker-compose
#直接docker-compose启动 docker-compose up -d #swarm 节点启动 docker swarm init #启动swarm docker stack ls # 列出此 Docker 主机上全部正在运行的应用 docker stack deploy -c <composefile> <appname> # 运行指定的 Compose 文件 docker stack services <appname> # 列出与应用关联的服务 docker stack ps <appname> # 列出与应用关联的正在运行的容器 docker stack rm <appname> # 清除应用 docker node ls # docker swarm leave --force #清除swarm
curl -L https://github.com/docker/machine/releases/download/v0.12.1/docker-machine-`uname -s`-`uname -m` >/tmp/docker-machine && chmod +x /tmp/docker-machine && sudo cp /tmp/docker-machine /usr/local/bin/docker-machine
Install VirtualBoxnode
wget http://download.virtualbox.org/virtualbox/5.1.30/VirtualBox-5.1-5.1.30_118389_el7-1.x86_64.rpm #wget https://www.virtualbox.org/download/oracle_vbox.asc #sudo rpm --import oracle_vbox.asc #rpm --checksig VirtualBox-5.1-5.1.30_118389_el7-1.x86_64.rpm yum install VirtualBox-5.1-5.1.30_118389_el7-1.x86_64.rpm ##or #需下载524版本的kernel wget ftp://195.220.108.108/linux/centos/7.3.1611/updates/x86_64/Packages/kernel-devel-3.10.0-514.26.2.el7.x86_64.rpm yum install kernel-devel-3.10.0-514.26.2.el7.x86_64.rpm from https://www.virtualbox.org/wiki/Linux_Downloads vi /etc/yum.repos.d/virtualbox.repo [virtualbox] name=Oracle Linux / RHEL / CentOS-$releasever / $basearch - VirtualBox baseurl=http://download.virtualbox.org/virtualbox/rpm/el/$releasever/$basearch enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://www.virtualbox.org/download/oracle_vbox.asc yum install VirtualBox-5.1
技术栈:docker-compose.ymllinux
version: "3" services: web: # 将 username/repo:tag 替换为您的名称和镜像详细信息 image: liyc/public-test:part1 deploy: replicas: 2 resources: limits: cpus: "0.1" memory: 20M restart_policy: condition: on-failure ports: - "80:80" networks: - webnet visualizer: image: dockersamples/visualizer:stable ports: - "8080:8080" volumes: - "/var/run/docker.sock:/var/run/docker.sock" deploy: placement: constraints: [node.role == manager] networks: - webnet redis: image: redis ports: - "6379:6379" volumes: - ./data:/data deploy: placement: constraints: [node.role == manager] networks: - webnet networks: webnet:
建立私有仓库nginx
#建立 docker run -d -p 5000:5000 --restart=always --name registry2 registry:2 #推送至私服 docker push localhost:5000/friendlyhello
docker-maven-plugin:git
https://coding.net/u/liyuchang/p/docker/git/tree/mastergithub
#构建image mvn clean package docker:build -Dmaven.test.skip=true #推送至dockerHub mvn的settings.xml <servers> <server> <id>docker-hub</id> <username>你的DockerHub用户名</username> <password>你的DockerHub密码</password> <configuration> <email>你的DockerHub邮箱</email> </configuration> </server> </servers> pom.xml: <serverId>docker-hub</serverId> mvn clean package -Dmaven.test.skip=true -DpushImage