欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker啟動常用容器命令及配置詳解

 更新時間:2023年03月02日 15:38:59   作者:Buckletime  
本文主要介紹了Docker啟動常用容器命令及配置詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

Docker 容器相關命令

容器是基于Docker鏡像被創(chuàng)建的。

docker run [Options] image運行容器

docker run [Options] image

#參數(shù)說明
--name="名字"           指定容器名字
-d                     后臺方式運行
-it                    使用交互方式運行,進入容器查看內容
-p                     指定容器的端口
	-p ip:主機端口:容器端口  配置主機端口映射到容器端口
	-p 主機端口:容器端口(常用)
	-p 容器端口
-P                     隨機指定端口
-e					   環(huán)境設置
-v					   容器數(shù)據卷掛載

運行并進入容器centos

[root@localhost ~]# docker run -it centos /bin/bash
[root@ce2bbae9f151 /]# ls
bin  etc   lib	  lost+found  mnt  proc  run   srv  tmp  var
dev  home  lib64  media       opt  root  sbin  sys  usr

進入容器,因為通常我們的容器都是使用后臺方式來運行的,有時需要進入容器修改配置

  • docker exec -it 容器id /bin/bash
# docker exec 進入容器后開啟一個新的終端,可以在里面操作
docker exec -it 容器id /bin/bash
  • docker attach 容器id
# docker attach 進入容器正在執(zhí)行的終端
docker attach 容器id

退出容器

exit 	# 停止容器并退出(后臺方式運行則僅退出)
Ctrl+P+Q  # 不停止容器退出

docker ps 查看運行的容器

# 查看當前正在運行的容器
docker ps 
     
-a   # 查看所有容器的運行記錄
-n=? # 顯示最近創(chuàng)建的n個容器
-q   # 只顯示容器的id

docker start 容器id 啟動容器

docker start 容器id          # 啟動容器
docker restart 容器id        # 重啟容器
docker stop 容器id           # 停止當前運行的容器
docker kill 容器id           # 強制停止當前容器

docker logs 容器id查看容器運行日志

docker logs -tf 容器id
docker logs --tail num 容器id  # num為要顯示的日志條數(shù)

docker top 容器id查看容器中進程信息

docker top 容器id

docker inspect 容器id查看容器的元數(shù)據

docker inspect 容器id

Docker 啟動mysql

# 1.啟動mysql  設置密碼、設置掛載數(shù)據卷
docker run -d -p 3306:3306 --name mymysql -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 mysql 
# 2.遠程連接mysql服務,若無權限,進入mysql容器中修改遠程連接權限
docker exec -it 36d4806c765a /bin/bash
# 登錄mysql
mysql -u root -p
# 修改root 可以通過任何客戶端連接
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

修改遠程連接權限成功后,可以通過Navicat等mysql客戶端連接數(shù)據庫。

Docker 啟動nginx

啟動nginx掛載和其他容器掛載有所區(qū)別,需要進行額外操作。

docker掛載是run時掛載,所以要先copy配置文件,如果不copy直接掛載啟動容器時會從掛載的目錄找配置文件,找不到會啟動失敗。

1. 運行容器

docker run --name nginx -d -p 7777:80 nginx

2. 在宿主機上創(chuàng)建掛載目錄

mkdir -p /home/docker/volumes/nginx/conf
mkdir -p /home/docker/volumes/nginx/log

3. 從容器中復制配置文件到掛載目錄

docker cp nginx:/etc/nginx/nginx.conf /home/docker/volumes/nginx/conf/nginx.conf     #從容器中復制配置文件
docker cp nginx:/etc/nginx/conf.d /home/docker/volumes/nginx/conf/                   #從容器中復制配置文件夾
docker cp nginx:/usr/share/nginx/html /home/docker/volumes/nginx/               #從容器中復制html文件
docker cp nginx:/var/log/nginx /home/docker/volumes/nginx/log                   #從容器中復制日志文件

4. 刪除nginx容器

docker stop nginx                               
docker rm nginx

5. 使用掛載的方式重新啟動nginx

chmod 777 /home/docker/volumes/nginx/conf/nginx.conf
docker run -d -p 7777:80 --name nginx \
 -v /home/docker/volumes/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
 -v /home/docker/volumes/nginx/conf/conf.d:/etc/nginx/conf.d \
 -v /home/docker/volumes/nginx/html:/usr/share/nginx/html \
 -v /home/docker/volumes/nginx/log:/var/log/nginx \
 -e LANG=C.UTF-8 -e LC_ALL=C.UTF-8 \
 --privileged=true --restart=always nginx

配置說明:

  • -e LANG=C.UTF-8 -e LC_ALL=C.UTF-8是解決nginx中文亂碼
  • --privileged=true 給容器內root權限
  • --restart=always 隨docker自啟動

Docker 啟動redis

docker run -p 6379:6379 -d --name myredis \
		   -v /home/docker_volume/redis/data:/data \
           -v /home/docker_volume/redis/conf/redis.conf:/etc/redis/redis.conf \
		   redis redis-server /etc/redis/redis.conf --appendonly yes
  • redis-server /etc/redis/redis.conf 以配置文件啟動redis
  • appendonly yes 開啟redis 持久化

進入redis容器

docker exec -it myredis redis-cli

Docker 啟動rabbitmq

docker run -it -d -p 5672:5672 -p15672:15672 --hostname my-rabbit --name my-rabbit \
		   -v /home/docker_volume/rabbit/:/var/lib/rabbitmq \
		   -e RABBITMQ_DEFAULT_USER=admin \
		   -e RABBITMQ_DEFAULT_PASS=admin rabbitmq:3-management

啟動成功后,瀏覽器訪問 http://ip:15672/,進入rabbitmq管理界面。

Docker 啟動Kafka

Kafka需要依賴于Zookeeper

啟動Zookeeper

docker run -it -d --restart=always --name zookeeper -p 2181:2181 wurstmeister/zookeeper

啟動Kafka

docker run -d --restart=always --name kafka -p 9092:9092 \
 -e KAFKA_BROKER_ID=0 \
 -e KAFKA_ZOOKEEPER_CONNECT=10.1.7.102:2181/kafka \
 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.1.7.102:9092 \
 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
 -v /etc/localtime:/etc/localtime wurstmeister/kafka

使用Kafka Tool工具連接:

在這里插入圖片描述

Docker 啟動tomcat

docker run -it -d --name mytomcat -p 8090:8080 \
		   -v /home/docker_volume/tomcat/webapps/:/usr/local/tomcat/webapps tomcat

默認鏡像中webapps目錄為空,先將項目放入webapps目錄下,再訪問http://ip:8090/

# 進入tomcat容器
docker exec -it mytomcat /bin/bash
# 復制項目到webapps下
cp -rf webapps.dist/* webapps

Docker 啟動jar包

jar包想要在docker中運行,需要把jar包制作成鏡像文件,docker再運行鏡像。

1.將jar包上傳到Linux中,并編寫Dockerfile文件

[root@localhost idea]# ls
demo-0.0.1-SNAPSHOT.jar  Dockerfile

2.Dockerfile文件內容

FROM java:8

# 將demo-0.0.1-SNAPSHOT.jar 復制 到容器中并重命名為 app.jar
COPY demo-0.0.1-SNAPSHOT.jar app.jar

CMD ["--server.port=8080"]

EXPOSE 8080

ENTRYPOINT ["java","-jar","app.jar"]

3.docker build構建鏡像

[root@localhost idea]# docker build -t springbootdemo:1.0 .
[root@localhost idea]# docker images
REPOSITORY       TAG                IMAGE ID       CREATED          SIZE
springbootdemo   1.0                d9648a49a226   50 seconds ago   661MB	

4.運行、測試

[root@localhost idea]# docker run -d -p:8888:8080 --name mydemo springbootdemo:1.0
[root@localhost idea]# curl localhost:8888/hello
hello buckletime![root@localhost idea]# 

Docker 啟動PostgreSQL

# 拉取鏡像
docker pull kartoza/postgis:11.0-2.5
# 運行容器
docker run -d -t --name postgresql -p 5432:5432 \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASS=postgres \
-e ALLOW_IP_RANGE=0.0.0.0/0 \
-v /home/volumes/postgres/data:/var/lib/postgresql \
-v /home/volumes/postgres/temp:/tmp/tmp \
--restart always kartoza/postgis:11.0-2.5
# 安裝postgis擴展
# 注意,擴展要加在數(shù)據庫上,而非模式上
CREATE EXTENSION postgis;
CREATE EXTENSION postgis_topology;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;
# 查看擴展是否安裝成功
SELECT * FROM pg_extension;

Docker 啟動ElasticSearch

# 拉取鏡像文件  
docker pull elasticsearch

# 創(chuàng)建掛載目錄
mkdir -p /home/volumes/elasticsearch/config
mkdir -p /home/volumes/elasticsearch/data
mkdir -p /home/volumes/elasticsearch/plugins

# 創(chuàng)建并寫入elasticsearch.yml配置,注意:http.host: 0.0.0.0 
echo "http.host: 0.0.0.0">>/home/volumes/elasticsearch/config/elasticsearch.yml

# 文件夾賦權
chmod -R 777 /home/volumes/elasticsearch/

# docker啟動elasticsearch
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
 -e "discovery.type=single-node" \
 -e ES_JAVA_OPTS="-Xms64m -Xmx128m" \
 -v /home/volumes/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
 -v /home/volumes/elasticsearch/data:/usr/share/elasticsearch/data \
 -v /home/volumes/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
 -d elasticsearch

參數(shù)說明:

  • -e "discovery.type=single-node":單例模式
  • -e ES_JAVA_OPTS="-Xms64m -Xmx128m":配置內存大小

查看elasticsearch是否安裝成功,瀏覽器訪問:http://localhost:9200

在這里插入圖片描述

 到此這篇關于Docker啟動常用容器命令及配置詳解的文章就介紹到這了,更多相關Docker啟動容器命令內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Docker 搭建 Tomcat 運行環(huán)境的方法

    Docker 搭建 Tomcat 運行環(huán)境的方法

    這篇文章主要介紹了Docker 搭建 Tomcat 運行環(huán)境的方法,Docker與虛擬機及搭建過程,介紹的非常詳細,需要的朋友可以參考下
    2016-10-10
  • docker search命令的具體使用

    docker search命令的具體使用

    本文主要介紹了docker search命令的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • docker將鏡像打包為.tar包實現(xiàn)方法

    docker將鏡像打包為.tar包實現(xiàn)方法

    使用tar包格式進行壓縮,方便在不同的docker主機之間進行遷移和備份,下面這篇文章主要給大家介紹了關于docker將鏡像打包為.tar包的實現(xiàn)方法,需要的朋友可以參考下
    2024-07-07
  • 如何使用Docker快速搭建服務器環(huán)境

    如何使用Docker快速搭建服務器環(huán)境

    這篇文章主要介紹了使用Docker快速搭建服務器環(huán)境的詳細步驟,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-10-10
  • Docker內網穿透frp部署實現(xiàn)過程解析

    Docker內網穿透frp部署實現(xiàn)過程解析

    這篇文章主要介紹了Docker內網穿透frp部署實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • 用Docker swarm快速部署Nebula Graph集群的教程

    用Docker swarm快速部署Nebula Graph集群的教程

    這篇文章主要介紹了用Docker swarm快速部署Nebula Graph集群的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 深入解析docker三種網絡模式

    深入解析docker三種網絡模式

    這篇文章主要介紹了docker三種網絡模式,分別是bridge橋接模式,host主機模式,none無網絡模式,每種模式給大家介紹的非常詳細,需要的朋友可以參考下
    2022-04-04
  • Docker?制作tomcat鏡像并部署項目的步驟

    Docker?制作tomcat鏡像并部署項目的步驟

    這篇文章主要介紹了Docker?制作tomcat鏡像并部署項目?,講解如何制作自己的tomcat鏡像,并使用tomcat部署項目,需要的朋友可以參考下
    2022-10-10
  • Docker格式化輸出命令:"docker?inspect?--format"?學習記錄

    Docker格式化輸出命令:"docker?inspect?--format"?學習記錄

    Docker?--format?參數(shù)提供了基于?Go模板?的日志格式化輸出輔助功能,并提供了一些內置的增強函數(shù),這篇文章主要介紹了Docker格式化輸出命令:"docker?inspect?--format"?學習筆記,需要的朋友可以參考下
    2023-01-01
  • chatgpt-web之docker打包流程

    chatgpt-web之docker打包流程

    這篇文章主要介紹了chatgpt-web中docker的打包流程,文中有詳細的代碼示例,對學習或工作有一定的幫助,需要的朋友可以參考下
    2023-05-05

最新評論