docker search java
搜索常用的镜像 name Description stars(收藏数) 一般就下最前面那个
docker pull java(这个java 是name名 或者可以docker pull java:7下载指定版本的)
下载镜像
doccker images 列出所有镜像
删除镜像
docker rmi java
保存镜像
docker save -o java.tar java 保存在当前操作的目录下 对了删除的时候如果不是最新版 加个:tag
加载镜像
docker load -i java.tar
启动一个nginx
docker run -d -p 91:80 nginx 加个--name 重命名名字
91是宿主端口 比如说 localhost:91可以访问到nginx 80就是nginx内部的端口 nginx这个容器自己的
run如果没有镜像会自己去下载
列出所有正在运行的容器
docker ps up表示运行中 exit已经停止
可以加个 -a 包括停止的容器
docker stop 镜像id 停止容器 也可以写容器名称 但是他的容器名称不确定
强制停止容器
docker kill containerid
启动容器
docker start containerid
重启容器
docker restart containerid
进去容器
docker atttach containerid比如你架设了一个linux虚拟机 或者 docker exec -it es /bin/bash exit和 crtl+D crtl+z退出
docker rm删除容器(删除镜像之前)
docker rm containerid
docker rm -f $(docker ps -a -q)
-a列出所有 -q只列出 已经停止 容器id
导出容器
docker export -o="last.tar" fa1d81626c8b
导入容器 他会自动创建镜像
docker import last.tar nginx
构建容器 就是从Dockfile文件中创建容器
文件内容
FROM nginx
RUN echo '<h1>spring cloud 文本编辑软件</h1>' > /usr/share/nginx/html/index.html
然后docker build -t nginx .
如果报Error checking context: 'can't stat '\\?\C:\Users\12154\AppData\Local\Application Data''.
说明当前目录没权限换个目录
复制容器到当前目录
docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml .
复制文件到容器
docker cp elasticsearch.yml es:/usr/share/elasticsearch/config
实时显示日志
docker logs -f -t --tail 100 es
下载kibana
docker pull kibana
docker run -it -d -e ELASTICSEARCH_URL=http://192.168.7.51:9200 --name kibana -p 5601:5601 kibana
千万不能用127.0.0.1
jenkins
docker search jenkins
注意下这个 应该是jenkins/jenkins
docker pull jenkins/jenkins
docker inspect jenkins 看版本
docker run -d -p 8002:8080 -v jenkins:/var/jenkins_home --name jenkins jenkins/jenkins
run -d -p 8002:8080 -v jenkins:/var/jenkins_home jenkins
-v 前面宿主机路径 后面jenkins的路径
安装成功后会一直starting 修改镜像
http://mirror.xmission.com/jenkins/updates/update-center.json
cp jenkins:/var/jenkins_home/hudson.model.UpdateCenter.xml .
docker cp hudson.model.UpdateCenter.xml jenkins:/var/jenkins_home
docker下载 ssh虚拟机 用户密钥拒绝连接 请尝试其他方式
sshd.config PermitRootLogin yes 这样改
模糊删除 容器
docker rm -f $(docker ps -a |grep spring |awk '{print $1}')
docker-compose config
启动容器服务docker-compose up
停止并删除容器服务docker-compose down
强制启动重新建立容器docker-compose up -d --force-recreate
需要首先进入到Dockerfile同级目录 执行 docker build -t dockerdemo . 构建个镜像 然后
docker login https://harbor.zhufunin.com:1443
2、登录私有hub创建项目
例如项目叫:abc-dev
2、给镜像打tag
docker tag 2e25d8496557 harbor.zhufunin.com:1443/my_repository/nginx:version1
2e25d8496557:IMAGE ID,可以用docker images 查看
harbor.zhufunin.com:1443:私有hub域名
my_repository:项目名称
nginx:镜像名称
version1:镜像版本号
4、推送
docker push xxxxx.com/my_repository/nginx:version1
docker run -it --restart=always -d --name portainer-docker -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
#docker-compose up -d 用户名 密码 nacos nacos
version: '3'
services:
nacos:
container_name: "nacos"
image: "nacos/nacos-server:1.3.2"
#当 docker重启时 这个也重启
restart: always
privileged: true
#host网络驱动程序仅适用于Linux主机,不支持Docker for Mac,Docker for Windows或Docker EE for Windows Server。
#host就把容器和主机混为一体 而模式是bridge模式 容器是能直接访问到外面 但是外面访问不到里面 可以端口映射 host就不需要端口映射 另外 127.0.0.1 不妥 想访问主机可以vThernet那个网关地址
network_mode: "bridge"
environment:
TZ: Asia/Shanghai
#单机模式
MODE: "standalone"
SPRING_DATASOURCE_PLATFORM: "mysql"
MYSQL_DATABASE_NUM: 1
MYSQL_SERVICE_HOST: "192.168.25.209"
MYSQL_SERVICE_PORT: 3306
MYSQL_SERVICE_USER: "root"
MYSQL_SERVICE_PASSWORD: "root"
MYSQL_SERVICE_DB_NAME: "nacos_config"
ports:
- "8848:8848"
#挂载目录 里面有个时间serverTimezone=UTC
volumes:
- D:\\test\\application.properties:/home/nacos/conf/application.properties
ocker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name prtainer portainer/portainer
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --restart=always --name prtainer portainer/portainer
密码 adminadmin
docker image prune docker删除未使用的镜像
docker container prune docker删除未使用的容器