docker常用指令

1、查看docker信息

docker system df

2、删除镜像

docker rmi --删除镜像

docker image prune --删除虚悬镜像

3、守护态运行

docker run -p 8080:8080 -d tomcat

--容器起名字

docker run -p 8081:8080 --name tomcat -d tomcat

4、删除容器

docker rm -f 4165845d34e0

docker container prune 一次删除所有的已停止的容器

5、进入容器

docker exec -it 4165845d34e0 /bin/bash

6、定制镜像

6.1、简单应用

创建Dockerfile文件名

----------编写Dockerfile

FROM tomcat:latest

COPY index.jsp /usr/local/tomcat/webapps/ROOT

---------编译镜像

docker build -t myshop .

-- -t 表示镜像名称 

-- . 表示在当前目录下使用 Dockerfile编译镜像,且指定当前目录为 “上下文”,上下文非常重要

=====编译原理,1.打包上下文,传输到 docker server;2.docker server 使用Dockerfile和传输上来的上下文构建出镜像

 

6.2、Dockerfile的其他命令

CMD --执行命令,只能使用一次

ENTRYPOINT --执行命令,只能使用一次

EVN --定义环境变量

EXPOSE 8080 3306 --开发端口

volume --定义数据卷

WORKDIR --类似于CD,进入一个目录(切换目录),docker exec -it myshop /bin/bash 会改变交互式运行时,进去后直接定位的工作目录

7、docker compose,容器编排环境

=======简单的例子

version: '3.1'

services: 

    tomcat:

        restart: always

        image: tomcat

        container_name: tomcat

        ports:

            - 8080:8080

=============执行

docker-compose up -d

docker-compose down

 

8、部署mysql的docker-compose.yml

version: '3.1'
services:
  db:
    image: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
    command:
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
    ports:
      - 3306:3306
    volumes:
      - ./data:/var/lib/mysql
  adminer:
    image: adminer
    restart: always
    ports:
     -  8083:8080

9、部署tomcat的docker-compose.yml

version: '3.1'
services: 
    tomcat:
        restart: always
        image: tomcat
        container_name: tomcat
        ports:
            - 8080:8080
        volumes:
            - ./webapps:/usr/local/tomcat/webapps
        environment:
            TZ: Asia/Shanghai

 

 

 

posted @ 2019-10-16 20:03  kuailewangzi1212  阅读(118)  评论(0编辑  收藏  举报