docker基本命令
1.docker images 查看镜像
2.docker run 第一次启动容器
3.docker ps 查看启动的容器
4.docker ps -a 查看所有容器
5.docker start containerId 非第一次启动容器
6.docker stop containerId 关闭容器
7.docker rm containerId 删除容器
8.docker rmi iamgeId 删除镜像
dockerfile命令
FROM : 基础镜像,当前镜像是基于哪个镜像的
MAINTAINER : 镜像维护着的姓名和邮箱地址
RUN:容器构建时需要运行的命令
EXPOSE: 当前容器对外暴露的端口号
WORKDIR: 指定在创建容器后,终端默认登录进来的工作目录,一个落脚点
ENV: 用来在构建镜像过程中设置环境变量
ADD: 将宿主机目录下的文件拷贝进镜像且ADD命令会自动处理URL和解压tar压缩包
COPY: 类似于ADD,拷贝文件和目录到镜像中。将从构建上下文目录中<源路径>的文件/目录复制到新的一层镜像内<目标路径>位置。(COPY src dest)(COPY [“src”,“dest”])
VOLUME: 容器数据卷,用于数据保存和持久化工作
CMD: 指定一个容器启动时要运行的命令,Dockerfile中可以有多个CMD指令,但只有最后一个生效,CMD会被docker run之后的参数替换
·ENTRYPOINT: 指定一个容器启动时要运行的命令,ENTRYPOINT的目的和CMD一样,都是在指定容器启动程序及参数。(追加 不会被覆盖)
ONBUILD: 当构建一个被继承的Dockerfile时运行命令,父镜像在被子继承后父镜像的onbuild被触发
docker启动neo4j
docker run --publish=7474:7474 --publish=7687:7687 --volume=d:/docker/neo4j/data:/data neo4j
docker启动es和kibana docker network create es_bridge docker run -d --name elasticsearch --net es_bridge -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2 docker run -d --name kibana --net es_bridge -p 5601:5601 kibana:7.6.2 查看es容器对应的ip:docker inspect elasticsearch | findstr IPAddress 如:172.19.0.2 docker exec -it kibana /bin/bash ---> cd /usr/share/kibana/config ---> vi kibana.yml 修改elasticsearch集群地址为“http://172.19.0.2:9200” docker restart kibana
|
docker启动es和kibana docker pull rabbitmq:3.12-management docker run --name some-rabbitmq -p 5672:5672 -p 15672:15672 -d rabbitmq:3.12-management 访问:http://localhost:15672/ RabbitMQ默认的登录账号和密码如下:
|
docker启动mysql
docker run --name my-mysql -p 3306:3306 -v d:/docker/mysql/conf:/etc/mysql/conf.d -v d:/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker run --name my-mysql -p 3306:3306 -v /data/docker/mysql/conf:/etc/mysql/conf.d -v /data/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
docker启动zookeeper
docker run --name my-zk
--privileged=true
-p 2181:2181
-v d:/docker/zk/conf:/conf
-d zookeeper
docker启动redis
docker run --name redis --privileged=true -p 6380:6379 -v /usr/local/docker/redis/conf/redis.conf:/etc/redis/conf -v /usr/local/docker/redis/data:/data -d redis --appendonly yes
docker启动rabbitmq
docker run --name my-rabbitmq -p 5672:5672 -p 15672:15672 -v d:/docker/rabbitmq/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -d rabbitmq
docker启动cdh
first step:
docker run \
> -id \
> --hostname=quickstart.cloudera \
> --privileged=true -t -i -d \
> -p 8020:8020 -p 7180:7180 -p 21050:21050 -p 50070:50070 -p 50075:50075 \
> -p 50010:50010 -p 50020:50020 -p 8890:8890 -p 60010:60010 -p 10002:10002 \
> -p 25010:25010 -p 25020:25020 -p 18088:18088 -p 8088:8088 -p 19888:19888 \
> -p 7187:7187 -p 11000:11000 -t -p 8888:8888 \
> -p 8032:8032 \
> --name=mycdh3 \
> cloudera/quickstart /usr/bin/docker-quickstart
second step:
//进入容器
docker exec -it cdh /bin/bash
//启动cloudera manager
/home/cloudera/cloudera-manager --enterprise --force
third step:
//访问cdh
http://localhost:7180
-
Username: cloudera
-
Password: cloudera
-
docker启动centos
docker run -itd --privileged -p 20010:22 --name="centos" 5d0da3dc9764 /usr/sbin/init
docker启动rocketmq
1) mkdir -p /app/rocketmq/rmqserver01/logs
mkdir -p /app/rocketmq/rmqserver01/store
mkdir -p /app/rocketmq/rmqbroker01/logs
mkdir -p /app/rocketmq/rmqbroker01/store
mkdir -p /app/rocketmq/rmqbroker01/conf
vim /app/rocketmq/rmqbroker01/conf/broker.conf
namesrvAddr=192.168.92.129:9876
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
brokerIP1 = 192.168.92.129
listenPort=10911
2)创建nameserver容器
docker run \
-d \
-p 9876:9876 \
--name rmqserver01 \
-e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" -e "JAVA_OPTS=-Duser.home=/opt" \
-v /app/rocketmq/rmqserver01/logs:/opt/logs \
-v /app/rocketmq/rmqserver01/store:/opt/store \
--restart always \
foxiswho/rocketmq:server-4.7.0
3)创建rocketmq:broker容器
docker run -it -d --net host --name rmqbroker01 -e "JAVA_OPT_EXT=-server -Xms128m -Xmx128m -Xmn128m" -e "JAVA_OPTS=-Duser.home=/opt" -v /app/rocketmq/rmqbroker01/conf/broker.conf:/etc/rocketmq/broker.conf -v /app/rocketmqq/rmqbroker01/logs:/opt/logs -v /app/rocketmq/rmqbroker01/store:/opt/store --privileged=true --restart always foxiswho/rocketmq:broker-4.7.0
4)启动rocketmq-console容器
docker run \
-d \
-p 8082:8080 \
-e "JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.92.129:9876;192.168.92.129:9877 -Dcom.rocketmq.sendMessageWithVIPChannel=false" \
--restart always \
styletang/rocketmq-console-ng:latest
5) 启动es容器
docker run --name my-es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx128m" -v /docker/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \ -v /docker/elasticsearch/data:/usr/share/elasticsearch/data \ -v /docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins \ -d elasticsearch:7.6.2
90 2022-10-23 00:21:07 docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.6.2
===========================================================================
进入容器客户端:
1)docker exec -it containerId /bin/bash
2)mysql --> mysql -u root -p
redis --> whereis redis-cli ./redis-cli
zookeeper --> whereis zkCli ./zkCli ls /zookeeper
===========================================================================
docker 安装gitlab-ce
cnblogs.com/mithrilon/p/13985710.html