Analysis of the implementation process of Docker intranet penetration frp deployment

Analysis of the implementation process of Docker intranet penetration frp deployment

1. Create a configuration file directory

cd /home directory

mkdir frp

The final directory structure:

2. Create a server configuration file

vi frps.ini

[common]
bind_port = 17000
token = myToken
vhost_http_port = 10080
vhost_https_port = 10443
 
dashboard_port = 17500
dashboard_user = admin
dashboard_pwd = admin
 
 
tcp_mux = true
max_pool_count = 10

3. Create a server-side yml file

vi frps-docker-compose.yml

version: '3'
services:
 
  frps:
    image: snowdreamtech/frps
    ports:
      - "17000:17000"
      - "27500:17500"
      - "10022:10022" #For ssh connection - "10080:10080" #For external network access # More ports can be added based on actual needs:
      - ./frps.ini:/etc/frp/frps.ini container_name: frps

4. Start the server

docker-compose -f frps-docker-compose.yml up Note: Enable background running -d

5. Create a client configuration file

vifrpc.ini

[common]
#Server ip
server_addr = xxxx
server_port = 17000
token = myToken
 
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 10022
use_encryption = true
use_compression = true
 
[pi.mydomain.com]
type = http
local_port = 80
custom_domains = pi.mydomain.com

6. Create client yml file

vi frpc-docker-compose.yml

version: '3'
services:
  frpc:
    image: cloverzrg/frpc-docker
    volumes:
      - ./frpc.ini:/conf/frpc.ini
    container_name: frpc
    network_mode: host

8. Start the client

docker-compose -f frpc-docker-compose.yml up -d

  • Visit the domain name http://pi.mydomain.com:10080, you can access the web page normally (the premise is that the client machine starts the http server and listens to port 80); note that the domain name A record of pi.mydomain.com should be resolved to IP xxxx first. If the server already has a corresponding domain name, you can also resolve the CNAME record to the original domain name of the server.
  • Connect remotely via ssh -p 10022 username@xxxx;
  • Visit http:xxxx:27500, and you can see the dashboard, which shows the connection status of each client.

Reference: https://liyangweb.com/service/358.html

frp Chinese document: https://www.cnblogs.com/yanglang/p/12035934.html

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Analysis of the process of deploying nGrinder performance testing platform with Docker
  • How to deploy MySQL and Redis services using Docker
  • How to install tomcat in docker and deploy the Springboot project war package
  • Steps to deploy multiple tomcat services using DockerFile on Docker container
  • Docker image creation, uploading, pulling and deployment operations (using Alibaba Cloud)
  • Detailed deployment of docker+gitlab+gitlab-runner
  • How to deploy stand-alone Pulsar and clustered Redis using Docker (development artifact)
  • Analysis of the Docker deployment Consul configuration process

<<:  Vue folding display multi-line text component implementation code

>>:  MySQL 8.0.21 installation steps and problem solutions

Recommend

A brief discussion on MySQL temporary tables and derived tables

About derived tables When the main query contains...

JDBC Exploration SQLException Analysis

1. Overview of SQLException When an error occurs ...

Two methods to disable form controls in HTML: readonly and disabled

In the process of making web pages, we often use f...

Comparison of the usage of EXISTS and IN in MySQL

1. Usage: (1) EXISTS usage select a.batchName,a.p...

Implementation of CSS circular hollowing (coupon background image)

This article mainly introduces CSS circular hollo...

How to install tomcat8 in docker

1. Install tomcat8 with docker 1. Find the tomcat...

...

Detailed explanation of primary keys and transactions in MySQL

Table of contents 1. Comments on MySQL primary ke...

MySQL 8.0.12 decompression version installation tutorial

This article shares the installation tutorial of ...

SQL left join and right join principle and example analysis

There are two tables, and the records in table A ...

Detailed explanation of routes configuration of Vue-Router

Table of contents introduce Object attributes in ...

Detailed explanation of the minimum width value of inline-block in CSS

Preface Recently, I have been taking some time in...

Detailed explanation of MySQL 30 military rules

1. Basic Specifications (1) InnoDB storage engine...