主要记录docker的使用,安装mysql集群,redis集群,以及前后端项目部署。
Centos安装Docker
更新安装源,安装docker
# yum update -y
# yum install -y docker
使用aliyun进行镜像加速
- 获取自己的专有的镜像加速地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
- 修改/etc/docker/daemon.json文件配置,没有则新建;
{
"registry-mirrors": ["自己专有的镜像加速地址"]
}
Docker工作流程图

启动、关闭、重启
systemctl start docker
systemctl stop docker
systemctl restart docker
Docker 常用指令
- 搜索镜像
docker search xxx
[root@localhost ~]# docker search java
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/node Node.js is a JavaScript-based platform for... 7489 [OK]
docker.io docker.io/tomcat Apache Tomcat is an open source implementa... 2415 [OK]
docker.io docker.io/java Java is a concurrent, class-based, and obj... 1976 [OK]
docker.io docker.io/openjdk OpenJDK is an open-source implementation o... 1702 [OK]
docker.io docker.io/ghost Ghost is a free and open source blogging p... 985 [OK]
docker.io docker.io/jetty Jetty provides a Web server and javax.serv... 305 [OK]
docker.io docker.io/groovy Apache Groovy is a multi-faceted language ... 71 [OK]
- 下载镜像,复制镜像名称,使用
docker pull 镜像名
下载镜像。
[root@localhost ~]# docker pull docker.io/java
Using default tag: latest
Trying to pull repository docker.io/library/java ...
latest: Pulling from docker.io/library/java
5040bd298390: Pull complete
- 查看docker已安装的镜像
docker images
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/java latest d23bdf5b1b1b 2 years ago 643 MB
- 导入导出镜像
docker load/save
[root@localhost ~]# docker save java > /home/java.tar.gz
[root@localhost ~]# docker load </home/java.tar.gz
- 移除docker镜像
[root@localhost ~]# docker rmi java
- 创建并启动一个容器
docker run -it --name 自定义容器名 容器名 启动的容器运行程序的类型
-it容器以交互界面的形式运行
,--name xxx
表示给容器其一个名字,可以不起
-p 容器映射的端口 宿主机端口:容器端口
-v /宿主机目录:容器目录
-privileged
权限
[root@localhost home]# docker run -it -p 9000:8080 -p 9001:8085 -v /home/project:/soft --privileged --name myjava docker.io/java bash
root@92a08148d67c:/# javac
Usage: javac <options> <source files>
where possible options include:
-g Generate all debugging info
-g:none Generate no debugging info
-g:{lines,vars,source} Generate only some debugging info
-nowarn Generate no warnings
...
root@92a08148d67c:/# java -version
openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-8u111-b14-2~bpo8+1-b14)
OpenJDK 64-Bit Server VM (build 25.111-b14, mixed mode)
root@92a08148d67c:/# cd soft
root@92a08148d67c:/soft# exit
exit
- 暂停停止容器
pause/unpause/stop/start
[root@localhost ~]# docker pause myjava
myjava
[root@localhost ~]# docker stop myjava
Error response from daemon: Cannot stop container myjava: Container 92a08148d67c1235e811557a0f6ff404ec729680ac7a65434e6d7fa2ce9e976c is paused. Unpause the container before stopping
[root@localhost ~]# docker unpause myjava
myjava
[root@localhost ~]# docker stop myjava
myjava
[root@localhost ~]# docker rm myjava
myjava
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
更多docker指令请戳我
网友评论