Add optional hostname argument to weave expose
This commit is contained in:
1 parent
2eb13f0020
commit
4d941338fd
2 files changed
+19
-2
No files matched your search
@@ -190,6 +190,11 @@ invocation:
|
||||
host2# weave expose 10.2.1.102/24 10.2.2.102/24
|
||||
host2# weave hide 10.2.1.102/24 10.2.2.102/24
|
||||
|
||||
Finally, exposed addresses can be added to weaveDNS by supplying a
|
||||
hostname:
|
||||
|
||||
host2# weave expose 10.2.1.102/24 -h exposed.weave.local
|
||||
|
||||
### <a name="service-export"></a>Service export
|
||||
|
||||
Services running in containers on a weave network can be made
|
||||
|
||||
@@ -23,7 +23,7 @@ usage() {
|
||||
echo "weave start <cidr> [<cidr> ...] <container_id>"
|
||||
echo "weave attach <cidr> [<cidr> ...] <container_id>"
|
||||
echo "weave detach <cidr> [<cidr> ...] <container_id>"
|
||||
echo "weave expose <cidr>"
|
||||
echo "weave expose <cidr> [-h <hostname>]"
|
||||
echo "weave hide <cidr>"
|
||||
echo "weave ps [<container_id> ...]"
|
||||
echo "weave status"
|
||||
@@ -760,7 +760,15 @@ case "$COMMAND" in
|
||||
;;
|
||||
expose)
|
||||
[ $# -gt 0 ] || usage
|
||||
for CIDR; do
|
||||
collect_cidr_args "$@"
|
||||
shift $CIDR_COUNT
|
||||
if [ $# -eq 0 ]; then
|
||||
FQDN=""
|
||||
else
|
||||
[ $# -eq 2 -a "$1" = "-h" ] || usage
|
||||
FQDN="$2"
|
||||
fi
|
||||
for CIDR in $CIDR_ARGS; do
|
||||
validate_cidr $CIDR
|
||||
create_bridge --without-ethtool
|
||||
if ! ip addr show dev $BRIDGE | grep -qF $CIDR
|
||||
@@ -769,6 +777,9 @@ case "$COMMAND" in
|
||||
arp_update $BRIDGE $CIDR
|
||||
add_iptables_rule nat WEAVE -o $BRIDGE ! -s $CIDR -j MASQUERADE
|
||||
add_iptables_rule nat WEAVE -s $CIDR ! -o $BRIDGE -j MASQUERADE
|
||||
if [ "$FQDN" ]; then
|
||||
http_call $DNS_CONTAINER_NAME $DNS_HTTP_PORT PUT /name/weave:expose/${CIDR%/*} --data-urlencode "fqdn=$FQDN" 2>/dev/null || true
|
||||
fi
|
||||
fi
|
||||
done
|
||||
;;
|
||||
@@ -782,6 +793,7 @@ case "$COMMAND" in
|
||||
ip addr del dev $BRIDGE $CIDR
|
||||
delete_iptables_rule nat WEAVE -o $BRIDGE ! -s $CIDR -j MASQUERADE
|
||||
delete_iptables_rule nat WEAVE -s $CIDR ! -o $BRIDGE -j MASQUERADE
|
||||
http_call $DNS_CONTAINER_NAME $DNS_HTTP_PORT DELETE /name/weave:expose/${CIDR%/*} 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
;;
|
||||
|
||||
Reference in new issue
Block a user